Dependencies 基于以前运行的任务

Dependencies 基于以前运行的任务,dependencies,task,airflow,Dependencies,Task,Airflow,我有一个DAG,它基本上设置了一个松弛通道,并邀请了一群人来观看。如果没有变化,我真的不需要在每次DAG运行时创建通道和添加用户。同时,我需要确保渠道和用户已经存在 我想知道是否有一种方法可以让Airflow,比如说,仅当它在前一次DAG运行中没有成功或者在过去一个小时左右没有运行时,才运行该任务 我想我也可以做一些检查点(构建一个用户散列并将其pickle到一个文件中,然后在后续运行中进行比较);但我希望气流已经以这种方式出现了。有几种方法可以解决这个问题: 1) :您可以定义自定义条件并触发

我有一个DAG,它基本上设置了一个松弛通道,并邀请了一群人来观看。如果没有变化,我真的不需要在每次DAG运行时创建通道和添加用户。同时,我需要确保渠道和用户已经存在

我想知道是否有一种方法可以让Airflow,比如说,仅当它在前一次DAG运行中没有成功或者在过去一个小时左右没有运行时,才运行该任务


我想我也可以做一些检查点(构建一个用户散列并将其pickle到一个文件中,然后在后续运行中进行比较);但我希望气流已经以这种方式出现了。

有几种方法可以解决这个问题:

1) :您可以定义自定义条件并触发DAG的分支以基于该条件运行。这可能是最简单的方法,因为您可以只包装逻辑以检查python可调用的通道。你可以找到一个更长的例子


2) 另一种方法是设定一个新的目标。您可以将创建通道的任务设置为仅在上游任务成功或失败时运行

有几种方法可以解决这个问题:

1) :您可以定义自定义条件并触发DAG的分支以基于该条件运行。这可能是最简单的方法,因为您可以只包装逻辑以检查python可调用的通道。你可以找到一个更长的例子

2) 另一种方法是设定一个新的目标。您可以将创建通道的任务设置为仅在上游任务成功或失败时运行