В последние 4 года работаю в направлении BigData. Программирую на Pyspark, Scala, разрабатываю даги Airflow для промышленных ETL-процессов. Автоматизация разработки через Docker.
Так же работал фулстек программистом в двух банках ПАО "Сибнефтебанк" (6 лет) и ПАО "Запсибкомбанк" (с 2015 года) в областях обязательной и аналитической отчетности.
2023-01-08
Хорошее приложение - это когда оно создано по общепринятым канонам, его код легко читается и в нём легко разбиратся. Каркас такого приложения можно писать каждый раз руками. Но есть автоматический способ - Maven.
Apache Maven — фреймворк для автоматизации сборки проектов на основе описания их структуры в файлах на языке POM. При создании приложения можно воспользоваться готовыми шаблонами из репозитория maven repository , Взять подходящий под ваши цели Архитип и на его основе создать свое Scala, JAVA или Android приложение, которое уже будет содержать в себе структуру для автоматической сборки и тестирования. Но можно создать свой собственный Архитип приложения, и уже от него создавать свои приложения. Это необходимо, когда разработка ведется в команде и все приложения должны соответствовать строго определенной структуре.
Как создать свой архитип Maven, и на основе него создать свое приложение можно узнать из моего проекта на github.
2022-11-30
Моей целью было настроить pipeline загрузки данных из базы данных ClickHouse в Hive.
ClickHouse - это колоночная аналитическая СУБД с открытым кодом, позволяющая выполнять аналитические запросы в режиме реального времени на структурированных больших данных (wikipedia)
Она позволяет хранить большие данные в столбчатой структуре.
Поддерживает репликацию данных. Также работает с форматами данных на вход и выход: TXT, CSV, JSON, PARQUET.
Передача данных может осуществлятся по ssl-соединению с использованием сертификата.
ClickHouse поддерживает 3 способа подключения к БД:
Окончательное решение было загрузка ClickHouse-client, входящие параметры: sql-запрос, а на выходе получали готовый файл в формате "parquet" (это в 11 раз меньше, чем txt-формат), который формируется на стороне сервера ClickHouse.
Существуют расхождения между типами данных ClickHouse и Spark. Но это все решается на стороне Clickhouse с помощью функции cast.
2023-03-21
Этот проект позволяет развернуть работу с тремя сервисами в Docker
Сервисы взаимосвязаны, поэтому в этом проекте можно заниматься локальной разработкой на PHP, используя MySql в качестве базы данных.
Проект рассчитан на начальный уровень подготовки и не требует специальных навыков.
Для того чтобы начать локальную разработку или познакомиться с базами данных, просто скачайте этот проект с github и следуйте инструкциям в файле README.MD.
Как установить Docker на свой компьютер
можно узнать тут.
2015-03-20
2018-09-14
Сервис подсказывает, как давно вы готовили то или иное блюдо, позволяет описывать приготовленные блюда и прикреплять изображения блюд.