通过我最近的研究,我逐渐意识到气流的schedule_interval
有一些怪癖,我已尽力尝试解释它可能影响我正在做什么,但还没有完全成功。
我正在使用这些默认args:
default_args = {
'owner': 'airflow',
'depends_on_past': False,
'start_date': datetime(2019, 1, 12),
'email': ['[email protected]'],
'email_on_failure': True,
'email_on_retry': False,
'retries': 0,
'retry_delay': timedelta(minutes=5),
'schedule_interval': '0 0,12 * * *'
}
我希望DAG在午夜和中午运行。
目前它只在午夜运行,我无法理解为什么。我在Google Cloud Composer中运行此功能,如果这有任何区别的话。
*编辑 - 修正了拼写错误
我会用“每十二小时”的cron表达,而不是“在我们的0和12”。正如您可能已经阅读过的那样,Airflow通过在每个间隔结束时创建间隔和计划任务来工作。通过将cron表达式描述的句点添加到Dag的开始日期来创建间隔。
尝试使用'schedule_interval': '0 */12 * * *'
,因为你的开始日期是午夜,它将与你的表达相同。