我有一个DAG,它需要在每个星期二和星期五触发(出于上下文的考虑,DAG的目的基本上是每周仅在星期二和星期五发布两次的ETL数据)
此DAG需要赶上过去。
我在许多运算符中使用了{{execution_date}}(用于API调用参数,在存储名称中用于保留原始数据的副本,...)
赶超效果很好,我的问题是现在。
由于计划间隔,每个星期五将ETL上一个星期二的数据(使用execute_date作为API调用参数),每个星期二将ETL上一个星期五的数据。
我需要的是星期二的运行获取本星期二而不是上一个星期五的数据。
我考虑使用start_date而不是execute_date进行API调用,但是在这种情况下,Catchup将无法按预期工作。
在Catchup运作良好且处理当前数据而没有计划间隔延迟的情况下,我找不到任何不错的解决方案...
有什么想法吗?
编辑基于andscoop的答案:
最好的解决方案是使用next_execution_date而不是execution_date