Владимир Верстов: DSL для ETL в DMP или чего нам не хватило в Airflow или другом готовом решении?

preview_player
Показать описание
Data Fest Online 2020

В open source мире существует множество инструментов для запуска, шедулинга и управления ETL процессами: Airflow, Luigi, Metaflow, ... Все они сосредоточены на описании зависимостей между тасками и графами, но не на том, что непосредственно происходит с данными внутри этих тасков и графов. Мы пошли от обратного и прежде всего выделили основные сущности любого ETL процесса: это таблицы и таски, которые читают данные, их преобразуют и прогружают в таблицы. Мы разработали свой DSL на python для единообразного описания таблиц в YT (in-house аналог Hadoop, Greenplum и ClickHouse) и тасков для MapReduce, Spark, разных SQL-диалектов (3 штуки) и голого python.

В докладе я расскажу:
- почему мы решили писать свой "велосипед"
- что находится "под капотом" нашего ETL фреймворка
- некоторые особенности ETL процессов в DMP Такси, Еды и Лавки, которые ежеминутно, ежечасно и ежедневно трудятся во благо аналитики и управленческой отчетности

Соцсети Data Fest:
Рекомендации по теме
Комментарии
Автор

Спасибо. Познавательно.
Особенно интересно было узнать про выбранные подходы. Например, чтобы отвязаться от структур источника, сохранять данные в json'e и тд.

nikolaysokolov