gpt4 book ai didi

cron - Airflow schedule_interval 和 start_date 让它总是触发下一个间隔

转载 作者:行者123 更新时间:2023-12-05 04:52:59 29 4
gpt4 key购买 nike

我如何配置 Airflow (mwaa) 以便它每天在同一时间(太平洋标准时间早上 6 点)触发 dag 何时部署?

我已经尝试了对我有意义的方法:

  1. 将 schedule_interval 设置为 0 6 * * *
  2. 将开始日期设置为:
now = datetime.utcnow()
now = now.replace(tzinfo=pendulum.timezone('America/Los_Angeles'))
previous_five_am = now.replace(hour = 5, minute = 0, second = 0, microsecond = 0)
start_date = previous_five_am

似乎每当我通过将 start_date 设置为前一天早上 5 点进行部署时,无论我什么时候部署 dag 或进行 Airflow 更新,它总是会在下一个早上 6 点触发

最佳答案

您的困惑可能是因为您希望 Airflow 安排像 cronjob 这样的 DAG,但实际上并没有。第一个 DAG Run 是根据 DAG 中任务的最小 start_date 创建的。后续 DAG 运行由调度程序进程根据 DAG 的 schedule_interval 按顺序创建。 Airflow 在间隔的 END 安排任务(参见 docs )你可以查看这个 answer例如。

至于您的示例代码 - 永远不要将您的 start_date 设置为动态的。这是一种不好的做法,有时会导致 DAG 永远不会被执行,因为 now() 总是移动到 now() + interval 可能永远不会达到参见 Airflow FAQ .

关于cron - Airflow schedule_interval 和 start_date 让它总是触发下一个间隔,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66287591/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com