powered by simpleCommunicator - 2.0.28     © 2024 Programmizd 02
Map
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Apache Airflow для ETL
25 сообщений из 53, страница 1 из 3
Apache Airflow для ETL
    #39568163
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Привет!
Предлагаю тут обмениваться опытом, идеями, бест-практикс по использованию Apache Airflow. Задавать вопросы опять же...
Ссылка на документацию.
Ссылка на github проекта.

Почему я его использую:
- Бесплатный, при этом очень активно развивается.
- Из коробки доступен достаточно удобный веб-интерфейс.
- Вся логика построения ETL пайплайнов строится кодом на Python (мне всегда проще было понять код, чем разбираться в гуях).
- Нравится идея шаблонизации основных задач в hook/operator/sensor.

При этом есть и минусы:
- Сырой!
- Зачастую его поведение непонятно.
- Работает на Python, что очень усложняет контроль ресурсов сервера (вынужден использовать докер-контейнеры с лимитами по cpu/memory).


Хочу спросить у коллег, кто также использует этот продукт:
- Как вы реализуете процесс версионирования/патчинга ETL-процедур (dags)?
- Как вы дорабатываете хуки-операторы под себя, используете механизм плагинов?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39568195
Ivan Durak
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
он по хадуп чтоли заточен?
или под что-то реляционное тоже?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39568216
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan Durak,

Он может работать на любых источниках данных.
Взаимодействие осуществляется через так называемые Hook'и - интерфейсы к БД (oracle, mysql, postgres, vertica etc), к Hadoop (sqoop, hive, spark), к файловым системам (ssh, aws). Хуки знают как подключиться к источнику данных.
Над хуками строятся операторы, которые уже могут что-то сделать с подключенным источником данных:
- запустить SQL-запрос над БД;
- извлечь результаты SQL-запроса в локальный CSV-файл или в pandas dataframe;
- скопировать файл с удаленной файловой системы по sftp;
- запустить Hive-запрос;
- запустить Sqoop-оператор
и т.д.

Оперируя этими имеющимися операторами можно строить свой пайплайн. При этом никто не мешает создать свой мега-оператор, в котором зашита типовая логика (например, объединить оператор выгрузки таблицы из Postgres в локальный CSV-файл; оператор копирования по ssh этого CSV-файл на локальную файловую систему; оператор копирования CSV-файла в hdfs; оператор Hive-запроса над внешней таблицей, замапленной на CSV-файл). И использовать уже его.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39571634
Sintetik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack Carver- Сырой!
- Зачастую его поведение непонятно.
вам платят за работу тестером? или много свободного времени?

имхо нет смысла тратить бесплатно свое время на софт, который не завоевал значимую долю рынка, не стал зрелым, вот станет, освоим за неделю
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572209
haXbat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack Carver,

А сравнивал его со StreamSets/NiFi? Эти оба тула пока тоже сыроваты, однако включены в дистрибутивы от Cloudera/Hortonworks.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572314
Фотография Дедушка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack Carver,

если так нравится делать ETL кодом и нравится пайтон отчего не Bonobo?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572470
Voyager_lan
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sintetik,

Не могу не согласиться
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572563
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Sintetik,

Сырой, но при этом его функционала вполне достаточно для решения всех обозримых задач.
Про непонятное поведение - тут проблема скорее во мне самом, либо в качестве contrib-кода; сейчас все необходимые операторы (для Sqoop, WebHDFS, HiveCli) дописаны нашей командой и работают стабильно.

Да, этот софт не используется повсеместно. Гораздо проще поставить и использовать ODI, не парясь о лицензиях.
Но тем не менее - список компаний , официально применяющих Airflow уже немал.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572567
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
haXbat,

NiFi хорош для потоковых обработок. И его тяжело применять для батчей.
Тогда как AIrflow хорош именно в контексте запуска раз в месяц/сутки/час каких-то длительных ресурсоемких задач.
Например, раз в месяц переложить терабайтную витрину из Оракла в Hive; раз в сутки перенести данные из Hive-таблицы над CSV-файлами в Hive-таблицу над parquet.
Для потоковой обработки мы пока применяем Flume, но смотрим в сторону NiFi (оттолкнули пляски с parcel'ом для вкрячивания NiFi в Cloudera)
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572617
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Дедушка,

Насколько я могу судить, Bonobo - это фреймворк для написания ETL-пайплайнов. Тогда как Airflow - это еще и шедулер, кластер исполняемых узлов, веб-морда.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39572752
Sintetik
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack CarverГораздо проще поставить и использовать ODI, не парясь о лицензиях.
еще проще поднять Talend или Pentaho и не париться о лицензиях официально
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39577263
GEP442
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack CarverГораздо проще поставить и использовать ODI, не парясь о лицензиях.

ODI в смысле бесплатный?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39581691
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
GEP442,

ODI как раз совсем не бесплатный. Но когда это мешало при использовании программного обеспечения компании Oracle...
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39590626
Jack Carver
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Группа в Телеграме - https://t.me/ruairflow
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39606568
Гулин Федор
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Jack Carver,

а можно как то пощупать airflow под виндой
или толкьо под юниксами ?
pip install apache-airflow

https://airflow.apache.org/installation.html#getting-airflow

вроде даже проактило
но гуи как вызвать ??
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #39606593
Фотография Дедушка
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Гулин Федорно гуи как вызвать ??если по дефолту, то вроде так localhost:8080/admin/
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Apache Airflow для ETL
    #39917577
Andruhaaa
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Jack Carver,

Просто сначала начни с демо тут http://choose.tools/tool?id=Airflow
...
Рейтинг: 0 / 0
Период между сообщениями больше года.
Apache Airflow для ETL
    #40106013
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подниму тему вопросом. Читаю доки, написано, что лучше трансформацию данеых в dag-е не делать, что бы не жрал память, а вызывать заранее созданный на python файл в котором сделать необходимую обработку. Это так? Есть какие то ещё рекомендации?
Ещё вопрос если нужно передавать параметры(переменные) между подпрограммами обработки данных, то как это лучше сделать, через переменные airflow или ещё как то?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106123
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DAG это ациклический граф - в нём обработку данных не получится сделать

А для обработки, да, отдельный питон. Или эскуэль обработка в базе, как при ELT
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106173
2wheels
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
да, все правильно. К тому же примерно раз в минуту py-файлы парсятся внутренним движком Airflow, и лишний код может вызвать проблемы.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106174
2wheels
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
а, по передаче параметров. Все зависит от размеров передаваемого датасета. Там есть ограничения в зависимости от СУБД, которая используется для хранения метаданных Airflow. Может получиться так, что проще и быстрее выгружать обработанные данные в Parquet или Avro, и обрабатывать их потом в следующем шаге.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106259
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
2wheels,

Спасибо за наводку на apache parquet, очень полезная штука для замены промежуточных csv файлов.

Есть в интернете ещё такая тема - переход от энтерпрайз etl на airflow + spark не приходилось никому с этим работать?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106261
Фотография Критик
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.,

А почему не apache nifi?
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106294
Полковник.
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Критик
Полковник.,

А почему не apache nifi?

Не знаю, я человек маленький, решение принимают где то наверху в архитектурных комитетах, а мне собственно всеравно чем заниматься.
...
Рейтинг: 0 / 0
Apache Airflow для ETL
    #40106301
Бумбараш
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Полковник.


Есть в интернете ещё такая тема - переход от энтерпрайз etl на airflow + spark не приходилось никому с этим работать?

собсна также как и в энтерпрайзе при схеме ELT - airflow дергает скрипты\программы для спарк
...
Рейтинг: 0 / 0
25 сообщений из 53, страница 1 из 3
Форумы / OLAP и DWH [игнор отключен] [закрыт для гостей] / Apache Airflow для ETL
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]