You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何设置Airflow DAG的schedule_interval参数实现每日特定时间触发

Airflow DAG每日多特定时间触发的实现方法

要让Airflow DAG每日在10:30、13:00和14:00这三个时间点触发,最直接的方式是使用Cron表达式作为schedule_interval参数的值,Airflow原生支持这种多时间点的配置。

方法:使用Cron表达式

Cron表达式的格式为 分钟 小时 日 月 星期,针对你的需求,对应的表达式是 30 10,13,14 * * *,各部分含义:

  • 30:指定触发的分钟数为30
  • 10,13,14:指定触发的小时为10、13、14(多个时间点用逗号分隔)
  • *:匹配任意日期、月份、星期,即每日触发

代码示例

from airflow import DAG
from airflow.operators.dummy import DummyOperator
from datetime import datetime

default_args = {
    'owner': 'airflow',
    'start_date': datetime(2024, 1, 1),
    'retries': 1,
}

with DAG(
    dag_id='daily_scheduled_dag',
    default_args=default_args,
    schedule_interval='30 10,13,14 * * *',  # 核心配置:每日三个时间点触发
    catchup=False,  # 禁止补跑启动前未执行的任务,根据需求调整
    tags=['daily', 'multi-time'],
) as dag:
    init_task = DummyOperator(task_id='init_task')
    # 在这里添加你的业务任务逻辑

注意事项

  • Airflow底层依赖croniter库解析Cron表达式,主流版本(2.x及以上)均能正常处理这种多时间点配置。
  • catchup参数设为False时,DAG启动后只会执行未来的触发任务;若需要补跑历史时间段的任务,可将其设为True。

内容的提问来源于stack exchange,提问作者gabikripka

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 21:44:49