仅安排 START_DATE 的气流回填

Airflow backfill only scheduling for START_DATE

我刚开始使用 airflow,我基本上想 运行 我的 dag 加载历史数据。所以我运行正在执行此命令

airflow backfill my_dag -s 2018-07-30 -e 2018-08-01

气流 运行 只在 2018 年 7 月 30 日使用我的 dag。我的预期是 2018-07-30、2018-07-31 和 2018-08-01 的气流 运行。 这是我爸爸代码的一部分:

import airflow
import configparser
import os

from airflow import DAG
from airflow.contrib.operators.databricks_operator import DatabricksSubmitRunOperator
from airflow.models import Variable
from datetime import datetime

def getConfFileFullPath(fileName):
    return os.path.join(os.path.abspath(os.path.dirname(__file__)), fileName)


config = configparser.ConfigParser(interpolation=configparser.ExtendedInterpolation())
config.read([getConfFileFullPath('pipeline.properties')])

args = {
    'owner': 'airflow',
    'depends_on_past': True,
    'start_date': datetime(2018,7,25),
    'end_date':airflow.utils.dates.days_ago(1)
}

dag_id='my_dag'
dag = DAG(
    dag_id=dag_id, default_args=args,
    schedule_interval=None, catchup=False)
...

那么我的 dag 配置有什么问题吗?

问题: schedule_interval=None


为了在您定义的日期范围内启动多次运行,您需要为 dag 设置计划间隔。例如尝试:

schedule_interval=@daily

开始日期、结束日期和计划间隔定义执行回填时计划程序将启动多少次运行。

Airflow scheduling and presets