как создавать тысячи задач каждый день, автоматически

#python #airflow #airflow-scheduler

#python #воздушный поток #воздушный поток-планировщик

Вопрос:

Мы хотели бы использовать Apache Airflow в основном для планирования Scrapy Python Spiders и некоторых других скриптов. У нас будут тысячи спайдеров, и их расписание может меняться изо дня в день, поэтому мы хотим иметь возможность создавать базы данных Airflow и планировать их все один раз в день автоматически из базы данных. Единственные примеры, которые я видел для airflow, используют скрипты python для записи файлов DAG.

Каков наилучший способ создания файлов dag и автоматического планирования?

Редактировать: Мне удалось найти решение, которое должно работать, используя файлы YAML https://codeascraft.com/2018/11/14/boundary-layer -declarative-airflow-workflows /

Ответ №1:

Airflow можно использовать в тысячах динамических задач, но не следует. Предполагается, что базы данных Airflow должны быть довольно постоянными. Вы все еще можете использовать Airflow, например, для обработки всей кучи очищенных данных и последующего использования этой информации в вашем процессе ETL.

Большое количество динамических задач может привести к запуску DAG, подобному этому:

введите описание изображения здесь

Что приводит к большому количеству информации о мусоре как в графическом интерфейсе, так и в файлах журналов.


Но если вы действительно хотите использовать только Airflow, вы можете прочитать эту статью (о динамической генерации DAG) и эту статью (о динамической генерации задач внутри DAG).