如何防止气流回填dag管路?
假设您有一个气流DAG,它对回填没有意义,这意味着在运行一次之后,快速运行后续时间将完全没有意义。
例如,如果您要从仅每小时更新一次的某个源中加载数据,则快速连续进行的回填将一次又一次地导入相同的数据。
当您实例化一个新的每小时任务时,这特别令人讨厌,并且N
在它开始以指定的时间间隔运行之前,它为错过的每个小时运行了一定的时间,进行了多余的工作。
我能想到的唯一解决方案是他们在文档的FAQ中特别建议的解决方案
我们建议不要将动态值用作start_date,尤其是
datetime.now()
因为它可能会造成混乱。
有什么方法可以禁用DAG的回填,还是应该执行上述操作?
-
升级到airflow版本1.8,并在airflow.cfg中使用catchup_by_default = False或对每个dag应用catchup =
False。https://github.com/apache/incubator-
airflow/blob/master/UPDATING.md#catchup_by_default