Apache Airflow

В этой статье я бы хотел рассказать об основных концепциях Airflow и как с ним работать. Что такое Airflow? Airflow – это open-source оркестаратор для управления процессами загрузки и обработки данных. Если у вас есть большое количество задач, запускаемых на cron, особенно, если между ними есть зависимости, то Airflow может вам сильно помочь. Основные его преимущества – это несложная инсталяция и первые шаги, хорошая визуализация, а также возможность автоматически создавать большое число задач и широкие возможности кастомизации. Основной объект Airflow – это направленный ацикличный граф (DAG). Узлы DAG – это task (задачи, которые выполняют основную работу). Между task’ами есть связи. Как следует из определения, циклов в зависимостях быть не может. DAG в Airflow может состоять из множества веток, различных ветвлений Далее …

Что такое AirFlow?

Планируем рабочие процессы вместе с Apache Airflow Почему Apache Airflow? Большинство процессов обработки данных строятся на определении набора «задач» для извлечения, анализа, преобразования, загрузки и хранения данных. Например, последовательность обработки данных может состоять из таких задач, как чтение логов из S3, создание задания Spark для извлечения соответствующих объектов, индексирование объектов с помощью Solr и обновление существующего индекса для расширения поиска. Чтобы автоматизировать процесс и запускать его еженедельно, вы можете использовать планировщик времени, например Cron, определяя рабочие процессы в Crontab. Это действительно отлично подходит для простых рабочих процессов, но все становится хуже, когда вы начинаете поддерживать рабочий процесс в крупных проектах, где между элементами существуют зависимости. Еще это усложняется, если вы ждете каких-то входных данных от сторонних разработчиков, или другие команды Далее …