Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/spring-mvc/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Airflow DAG依赖项,延迟加载_Airflow_Airflow Scheduler - Fatal编程技术网

Airflow DAG依赖项,延迟加载

Airflow DAG依赖项,延迟加载,airflow,airflow-scheduler,Airflow,Airflow Scheduler,在导入Python文件时,调度器将读取我的所有依赖项。因为我的依赖关系很慢,并且调用本机库,所以我希望将DAG计划与实际任务分开。我计划将任务发送到云 什么是正确的气流设计,只导入计划和DAG定义,而不导入任务依赖项,直到它们实际使用?优点和缺点是什么?这在很大程度上取决于您的DAG设计 一般来说,无论是逻辑(读取变量、执行某些函数等)还是导入,都要尝试使任何顶层代码无效。这可以通过使用某种形式的惰性评估来实现 对于导入,您可以尝试将导入烘焙到只在执行期间调用的函数中(例如,通过创建自定义运算符

在导入Python文件时,调度器将读取我的所有依赖项。因为我的依赖关系很慢,并且调用本机库,所以我希望将DAG计划与实际任务分开。我计划将任务发送到云


什么是正确的气流设计,只导入计划和DAG定义,而不导入任务依赖项,直到它们实际使用?优点和缺点是什么?

这在很大程度上取决于您的DAG设计

一般来说,无论是逻辑(读取变量、执行某些函数等)还是导入,都要尝试使任何顶层代码无效。这可以通过使用某种形式的惰性评估来实现

对于导入,您可以尝试将导入烘焙到只在执行期间调用的函数中(例如,通过创建自定义运算符或使用python运算符)