Прежде чем перейти к статье, хочу вам представить, экономическую онлайн игру Brave Knights, в которой вы можете играть и зарабатывать. Регистируйтесь, играйте и зарабатывайте!
Airflow это популярная опенсорсная платформа управления задачами. В частности его используют для построения ETL-пайплайнов. Например, мне доводилось переливать данные между базами данных, хранилищами и озерами данных с его помощью. А также я использовал его для препроцессинга данных для моделей машинного обучения. Но так ли подходит Airflow для ETL на сегодняшний день?
В этой статье мы рассмотрим как с помощью Airflow ETL операторов выгрузить данные из Postgres в BigQuery в парадигмах ETL и ELT. Далее разберем сложности, с которыми вы можете столкнуться при реализации инкрементальной загрузки данных в DAG (DAG - directed acyclic graph, ориентированный ацикличный граф - цепочка связанных задач). Наконец, мы обсудим почему Airflow ETL операторы не смогут покрыть все ваши потребности в интеграциях в дальней перспективе.
В качестве альтернативы предлагается продолжать использовать Airflow в качестве планировщика и для мониторинга ETL/ELT-пайплайнов, и рассмотреть другие опенсорсные продукты для шагов выгрузки, преобразования и загрузки данных. Например, взять Airbyte для шагов EL (Extract и Load - выгрузки и загрузки данных) и dbt для шагов T (Transform - преобразование данных). Хорошая новость заключается в том, что Airflow отлично интегрируется с Airbyte и dbt.