如何在Airflow中设置DAG之间的依赖关系?

Con*_*nor 35 python etl airflow

我正在使用Airflow来安排批处理作业.我有一个每晚运行的DAG(A)和每月运行一次的另一个DAG(B).B取决于A已成功完成.但是B需要很长时间才能运行,因此我希望将其保存在单独的DAG中以便更好地进行SLA报告.

如何在同一天成功运行DAG A,使DAG B运行?

p.m*_*aes 39

您可以使用名为ExternalTask​​Sensor的运算符来实现此行为.DAG(B)中的任务(B1)将被安排并等待DAG(A)中的任务(A2)成功

外部任务传感器文档

  • 这是推荐的方法吗?我有一个日常任务,需要等待DagA(包括5个任务)和DagB(5个单独的任务).我的DagC应该等待这两个成功,然后从数据库中查询两个表,聚合并加入它们,然后发送一些电子邮件/文件. (4认同)
  • @nono是的。你不会的 (2认同)

non*_*ono 9

看起来像TriggerDagRunOperator也可以使用,你可以使用python callable来添加一些逻辑.如下所述:https://www.linkedin.com/pulse/airflow-lesson-1-triggerdagrunoperator-siddharth-anand