。嗨,大家好,
从 Airflow UI 中,我们试图了解如何在未来的特定时间启动 DAG 运行,但我们总是在追赶模式下获得 2 次额外的运行(即使追赶被禁用)
例子
使用以下参数创建 DAG 运行
- 开始日期:10:30
- execution_date:未定义
- 间隔 = 3 分钟(来自 .py 文件)
- catchup_by_default = False
在当前时间打开ON 开关:10:28。我们得到的是 Airflow 触发了 2 个 DAG 运行,execution_date 位于:
- 10:24
- 10:27
并且这 2 次 DAG 运行一个接一个地以追赶模式运行,这不是我们想要的 :-(
我们做错了什么?我们可能理解 10:27 的运行(ETL 概念),但我们没有得到 10:24 的运行 :-(
感谢您的帮助 :-)
细节:
操作系统:红帽 7
蟒蛇:2.7
气流:v1.8.0
DAG python 文件:
from airflow import DAG
from airflow.operators.bash_operator import BashOperator
from datetime import datetime, timedelta
default_args = {
'owner': 'aa',
'depends_on_past': False,
'start_date': datetime(2017, 9, 7, 10, 30),
'run_as_user': 'aa'
}
dag = DAG(
'dag3', default_args=default_args, schedule_interval=timedelta(minutes=3))
dag.catchup = False
create_command = "/script.sh "
t1 = BashOperator(
task_id='task',
bash_command='date',
dag=dag)