【问题标题】:How to run one airflow task and all its dependencies?如何运行一项气流任务及其所有依赖项?
【发布时间】:2017-03-06 19:22:38
【问题描述】:

我怀疑

airflow run dag_id task_id execution_date

会运行所有上游任务,但它不会。当它发现并非所有相关任务都运行时,它只会失败。如何运行特定任务及其所有依赖项?我猜这是不可能的,因为气流设计决定,但有没有办法解决这个问题?

【问题讨论】:

  • 我面临同样的问题,但没有解决方案。我认为可能有一种方法可以使用 UI 并从处于运行状态的 dag 运行任务。

标签: python-3.6 airflow airflow-scheduler


【解决方案1】:

您可以通过使用 -i/-I/-A 标志以及运行命令来独立运行任务。

但是,气流的设计不允许运行特定任务及其所有依赖项。

您可以通过从 DAG 中删除不相关的任务来回填 dag 以用于测试目的

【讨论】:

  • 那么实现目标(从 DAG 运行任务及其依赖项)的最佳替代方法是什么?
  • 阿兹卡班有这个功能。在执行流程弹出窗口中,您可以禁用任何作业或禁用其上游依赖项或下游依赖项,然后执行流程。 azkaban.readthedocs.io/en/latest/…
【解决方案2】:

一种解决方法,但如果您始终如一地给您的任务task_id-s,您可以尝试从 Airflow CLI(命令行界面)进行回填:

airflow backfill -t TASK_REGEX ... dag_id

其中TASK_REGEX 对应于您要重新运行的任务及其依赖项的命名模式。

(记得添加the command line options 的其余部分,如--start_date)。

【讨论】:

    猜你喜欢
    • 2021-03-28
    • 2021-06-12
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 1970-01-01
    • 2016-11-08
    • 2021-10-22
    • 2019-01-22
    相关资源
    最近更新 更多