嗨,我是Apache Airflow的新手,我有很多依赖关系可以说
任务A >>任务B >>任务C >>任务D >>任务E
是否可以从中间任务(例如任务C)运行Airflow DAG?
在分支的情况下是否可以仅运行特定分支 运算符在中间?
是否可以从上一个失败任务恢复Airflow DAG?
如果不可能,如何管理大型DAG并避免重新运行 多余的任务?
如果可能的话,请向我提供有关实施方法的建议。
答案 0 :(得分:-1)
您无法手动执行。如果设置BranchPythonOperator,则可以根据BranchPythonOperator
与1相同。
是。您可以清除上游的任务,直到根源或下游,直到节点的所有叶子为止。
您可以执行以下操作:
Task A >> Task B >> Task C >> Task D
Task C >> Task E
其中C
是分支运算符。
例如:
from datetime import date
def branch_func():
if date.today().weekday() == 0:
return 'task id of D'
else:
return 'task id of E'
Task_C = BranchPythonOperator(
task_id='branch_operation',
python_callable=branch_func,
dag=dag)
这是星期一的任务序列:
Task A >> Task B >> Task C >> Task D
这是一周中其余时间的任务序列:
Task A >> Task B >> Task C >> Task E