繁体   English   中英

如何无延迟地安排执行?

[英]How to schedule execution without delay?

我有一个问题,我需要在每个月的第一天启动一个 DAG,但是我有一个问题,DAG 于 10 月 1 日开始,但在 11 月 1 日当天执行,我需要 10 月 1 日执行 10 月 1 日和 11 月 1 日执行 1十一月,不拖延执行一个月。

我的调度程序是:'0 10 1 * *'

谢谢

这就是 Airflow 的工作原理。 间隔结束时的气流计划 DAG。 所以如果你有:

DAG(
    dag_id='tutorial',
    schedule_interval='0 10 1 * *',
    start_date=datetime(2021, 10, 1),
) 

第一次运行将于2021-11-01开始 - 本次运行的执行日期为2021-10-01 此行为与数据管道的工作方式一致。 在 11 月,您需要处理 10 月的数据。 或者用我之前提到的术语 - 您的每月间隔从 10 月初开始,到 11 月结束,因此在 11 月初您可以运行处理 10 月数据的作业。

也就是说 - 在工作本身中,您可以处理您希望的任何时间间隔。 为此,您可以使用Airflow 宏

简单地说,如果你想你的第一个DAG运行开始在2021-10-01 ,你应该设置start_date=datetime(2021, 9, 1)

从 Airflow 2.2.0 开始,该领域有所增强。 随着AIP-39 Richer Scheduler的完成,Airflow 将“何时运行”与“要处理的时间间隔”分离。 您可以在本文档中了解时间表的概念。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM