【问题标题】:Airflow: Mark execution date range task istances as success气流:将执行日期范围任务实例标记为成功
【发布时间】:2020-12-07 11:07:17
【问题描述】:

我有一个 DAG,它已经运行了十多年的任务。现在我需要在开始的时候再增加一年。我用谷歌搜索了一下,建议在新的 dag_id 下执行此操作。因为旧 DAG 已经在指定的执行日期范围内运行,所以我想将新 DAG 中的那些标记为成功。如何以方便的方式存档?

提前致谢。本周有一个美好的开始。

【问题讨论】:

    标签: airflow airflow-scheduler


    【解决方案1】:

    Airflow 的 backfill feature 旨在完全按照您的意愿行事。

    也就是说,并不是每个人都喜欢使用该功能。例如,如果您的 dag 通常是一个小时工作,那么以小时为单位回填几年的数据可能真的效率很低。

    因此,出于各种原因,创建一个临时的“回填”dag 并不是一个坏方法。

    为了清楚起见,“回填” dag 我指的是您用于目的回填的 dag,而使用气流回填功能。

    对于您的“回填”dag,使用 DAG 参数 start_dateend_date 来控制 dag 将为其创建 dag 运行的 execution_date 的范围。

    然后,在您的“回填”dag 完成所有运行后,您可以将其删除。 Airflow 不会知道旧的任务实例现在已回填,但您可能并不关心这一点。如果这样做,您可以在元存储数据库中手动更新dag_id。否则,您的“旧” dag 具有最近时期的正确元数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-11-14
      • 1970-01-01
      相关资源
      最近更新 更多