Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / OLAP и DWH Новый топик    Ответить
 Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
Привет!
Предлагаю тут обмениваться опытом, идеями, бест-практикс по использованию Apache Airflow. Задавать вопросы опять же...
Ссылка на документацию.
Ссылка на github проекта.

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

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


Хочу спросить у коллег, кто также использует этот продукт:
- Как вы реализуете процесс версионирования/патчинга ETL-процедур (dags)?
- Как вы дорабатываете хуки-операторы под себя, используете механизм плагинов?
12 дек 17, 11:02    [21026228]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Ivan Durak
Member

Откуда: Minsk!!!
Сообщений: 3326
он по хадуп чтоли заточен?
или под что-то реляционное тоже?
12 дек 17, 11:22    [21026328]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
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-файл). И использовать уже его.
12 дек 17, 11:45    [21026456]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Sintetik
Member

Откуда: SpB->Msk->...
Сообщений: 5525
Jack Carver
- Сырой!
- Зачастую его поведение непонятно.

вам платят за работу тестером? или много свободного времени?

имхо нет смысла тратить бесплатно свое время на софт, который не завоевал значимую долю рынка, не стал зрелым, вот станет, освоим за неделю
18 дек 17, 19:40    [21043734]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
haXbat
Member

Откуда:
Сообщений: 441
Jack Carver,

А сравнивал его со StreamSets/NiFi? Эти оба тула пока тоже сыроваты, однако включены в дистрибутивы от Cloudera/Hortonworks.
19 дек 17, 17:54    [21046512]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Дедушка
Member

Откуда: Город трёх революций
Сообщений: 4764
Jack Carver,

если так нравится делать ETL кодом и нравится пайтон отчего не Bonobo?
19 дек 17, 22:04    [21047048]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Voyager_lan
Member

Откуда:
Сообщений: 1442
Sintetik,

Не могу не согласиться
20 дек 17, 09:37    [21047639]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
Sintetik,

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

Да, этот софт не используется повсеместно. Гораздо проще поставить и использовать ODI, не парясь о лицензиях.
Но тем не менее - список компаний, официально применяющих Airflow уже немал.
20 дек 17, 11:08    [21047951]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
haXbat,

NiFi хорош для потоковых обработок. И его тяжело применять для батчей.
Тогда как AIrflow хорош именно в контексте запуска раз в месяц/сутки/час каких-то длительных ресурсоемких задач.
Например, раз в месяц переложить терабайтную витрину из Оракла в Hive; раз в сутки перенести данные из Hive-таблицы над CSV-файлами в Hive-таблицу над parquet.
Для потоковой обработки мы пока применяем Flume, но смотрим в сторону NiFi (оттолкнули пляски с parcel'ом для вкрячивания NiFi в Cloudera)
20 дек 17, 11:13    [21047967]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
Дедушка,

Насколько я могу судить, Bonobo - это фреймворк для написания ETL-пайплайнов. Тогда как Airflow - это еще и шедулер, кластер исполняемых узлов, веб-морда.
20 дек 17, 12:01    [21048116]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Sintetik
Member

Откуда: SpB->Msk->...
Сообщений: 5525
Jack Carver
Гораздо проще поставить и использовать ODI, не парясь о лицензиях.

еще проще поднять Talend или Pentaho и не париться о лицензиях официально
20 дек 17, 14:29    [21048729]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
GEP442
Member

Откуда:
Сообщений: 61
Jack Carver
Гораздо проще поставить и использовать ODI, не парясь о лицензиях.


ODI в смысле бесплатный?
28 дек 17, 09:27    [21068810]     Ответить | Цитировать Сообщить модератору
 Re: Apache Airflow для ETL  [new]
Jack Carver
Member

Откуда: obi2ru.blogspot.com
Сообщений: 1700
GEP442,

ODI как раз совсем не бесплатный. Но когда это мешало при использовании программного обеспечения компании Oracle...
10 янв 18, 13:20    [21093171]     Ответить | Цитировать Сообщить модератору
Все форумы / OLAP и DWH Ответить