Динамические операторы в DAG - PullRequest
0 голосов
/ 24 мая 2019

Я хотел бы знать, является ли то, что я сделал для достижения цели динамических операторов в DAG Airflow, хорошей или плохой практикой.

Цель, которую я должен был достичь, - создать в группе DAG количество операторов «х» на основе результата вызова API.Этот DAG будет запускаться, например, каждую неделю.

Созданная мной программа работает, но я не знаю, является ли это хорошей практикой для разработки DAG для Airflow.Итак, мой вопрос: это хорошая практика или нет, что было бы лучшим решением этой проблемы?

Код, который я использовал для достижения этой цели:

with DAG('my_dag', default_args=default_args, schedule_interval='@weekly') as my_dag:

    start = DummyOperator(
        task_id='start'
    )

    endpoint = 'www.example.com/api/dummies'
    r = requests.get(endpoint)
    dummies = r.json()

   for _, dummy in enumerate(dummies):
        dummy_operator = DummyOperator(
                    task_id='dummy_opr_{}'.format(dummy['id']
                    )
        start >> dummy_operator

1 Ответ

0 голосов
/ 25 мая 2019

Короткий ответ: «Да», это действительно общая схема для динамического создания таких задач.

...