何时评估气流损耗定义?

时间:2019-10-26 01:38:47

标签: airflow

假设我有一个气流dag文件,它创建了一个像这样的图形...

def get_current_info(filename)
    current_info = {}
    <fill in info in current_info relevant for today's date for given file>
    return current_info

files = [
    get_current_info("file_001"),
    get_current_info("file_002"),
    ....
]

for f in files:
    <some BashOperator bo1 using f's current info dict>
    <some BashOperator bo2 using f's current info dict>
    ....

    bo1 >> bo2
    ....

由于current_info字典中用于定义dag的这些值会定期(此处每天)更改,因此,我想知道dag定义的更新过程/调度是什么。 (我每次运行都会打印current_info值,并且值似乎正在更新,但对这种情况的发生方式和时间感到好奇。)

什么时候评估气流损失定义?在文档中的任何地方都引用过?

2 个答案:

答案 0 :(得分:1)

在调度程序的每次运行中都会评估DAG。

This article描述了调度程序的工作方式,以及在什么阶段提取DAG文件进行评估。

答案 1 :(得分:0)

经过对[airflow电子邮件列表] [1]的讨论,事实证明 airflow在运行时为每个任务构建了dag(因此每个任务都包括再次构建dag的开销(我的案子非常重要))

在此处查看更多详细信息:https://stackoverflow.com/a/59995882/8236733