我想知道实现Airflow DAG中动态操作员目标的目的是好是坏。
我必须实现的目标是在内部创建一个“ x”个运算符 基于API调用结果的DAG。该DAG每周(例如)每周运行一次。
我制作的程序可以运行,但是我不知道这是开发用于Airflow的DAG的好习惯。因此,我的问题是:这是一种好的做法,还是没有更好的解决方案?
我用来实现此目标的代码:
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
答案 0 :(得分:0)
简短的回答,“是”,动态创建此类任务确实是一种常见模式。