Airflow多并行任务无法正常汇聚到下游任务的问题排查
问题根源
你遇到的是Airflow 1.x版本的语法限制问题。你当前使用的Airflow 1.10.15属于1.x版本,不支持A >> [B, C] >> D这种连续链式的依赖写法,该特性是Airflow 2.x版本才新增的功能。1.x版本中该写法会被解析器错误识别,导致end_opr任务的依赖逻辑异常,出现重复实例的问题。
解决方法
你只需要把依赖声明拆成两行编写即可,原有任务定义代码无需修改:
# 替换原有start >> [dummy1, dummy2] >> end_opr这一行 start >> [dummy1, dummy2] [dummy1, dummy2] >> end_opr
修改后重新上传DAG,刷新Airflow UI就能看到符合预期的依赖结构:start执行完成后并行运行dummy1、dummy2,两个任务都执行完成后才会触发end_opr运行。
内容的提问来源于stack exchange,提问作者dasdasd
相关产品推荐
相关产品推荐

