我创建我的气流DAG如下:
dag = DAG(...)但是在多个教程和课程中,我看到它们使用with ... as子句,如下所示:
with DAG(...) as dag:
# Code that will use the dag variable.我猜这样,在调度程序执行代码块之后,DAG实例将被销毁,但是这样做有真正的好处吗?我找不到任何关于这个的文件。
发布于 2020-05-18 18:11:42
是。
如果你了解with...as的作用,那么你应该明白它对气流生态系统的影响并没有什么不同。
具体来说,它确保非托管资源-in (这种情况下的DAG类实现)被正确清除,即使有异常抛出(不需要每次使用try/except块)。
此外,不必将dag=dag添加到每个单独的系统中,这是很好的。
https://stackoverflow.com/questions/60114399
复制相似问题