Airflow 气流-暂停/取消暂停并行运行的同一DAG的单个DAG运行

Airflow 气流-暂停/取消暂停并行运行的同一DAG的单个DAG运行,airflow,Airflow,我们目前正在评估一个项目的气流。我想知道在并行多次运行DAG时,是否有方法停止/启动单个DAG运行。暂停/取消暂停dag_id似乎暂停/取消暂停dag下的所有dag运行。相反,我们希望暂停单个DAG运行(或其中的任务)。让我知道这是否可以在气流中实现 如果这是不可能的,这里有我正在考虑的其他选择,让我知道你对这些的意见 更改任务状态更改DAGROUN下的所有任务以标记失败或成功。这样,特定的dagrun将在其轨迹上停止,而不会影响其他dagrun 气流传感器从s3或http或sql或其他地方提取

我们目前正在评估一个项目的气流。我想知道在并行多次运行DAG时,是否有方法停止/启动单个DAG运行。暂停/取消暂停dag_id似乎暂停/取消暂停dag下的所有dag运行。相反,我们希望暂停单个DAG运行(或其中的任务)。让我知道这是否可以在气流中实现

如果这是不可能的,这里有我正在考虑的其他选择,让我知道你对这些的意见

  • 更改任务状态更改DAGROUN下的所有任务以标记失败或成功。这样,特定的dagrun将在其轨迹上停止,而不会影响其他dagrun
  • 气流传感器从s3或http或sql或其他地方提取此信息以暂停当前运行。并且有一个任务,每次检查s3是否需要停止此dagrun(而不是其他dagruns)
  • 子数据集。-我们可以暂停/取消暂停子数据集吗。这样,对于我们想要执行的每个并行用户的请求,我们都会发出一个子DAG,并且可以暂停userAs subdag,而不会影响其他用户的子DAG

  • 气流中没有任何“烘焙”来支持这一点,但您可以(ab)使用
    运行的状态,将其更改为
    “failed”
    以暂停,然后返回到
    “running”
    以恢复;您无法覆盖非暂时性覆盖,但对于测试而言,它应该是可行的。

    这个问题已经提出,但我怀疑是否有一个本地解决方案yetThanks@joebeeson。您知道是否有办法通过RESTAPI或CLI将dagrun标记为“失败”吗?我看到有一个“airflow run”允许我们将任务标记为“Successed”,但没有看到任何营销任务或dagrun“failed”。经过一些挖掘,我能够使用该执行日期的“failed”状态更新task_实例表中的行,这似乎反映在该特定dagrun下该任务的UI罚款中。在CLI中找不到该选项。但是,我能够从CLI运行该任务,忽略所有依赖项(选项-A)。