【问题标题】:When does a airflow dag definition get evaluated?何时评估气流 dag 定义?
【发布时间】:2020-07-11 06:22:04
【问题描述】:

假设我有一个气流 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
    ....

由于用于定义 dag 的 current_info dict 中的这些值会定期(此处为每天)更改,我想知道 dag 定义通过什么进程/计划进行更新。 (我打印每次运行的 current_info 值,并且值似乎正在更新,但很好奇这究竟是如何以及何时发生的)。

何时评估气流 dag 定义?在文档中的任何地方引用?

【问题讨论】:

    标签: airflow


    【解决方案1】:

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

    This article 描述了调度程序的工作原理以及在哪个阶段提取 DAG 文件进行评估。

    【讨论】:

      【解决方案2】:

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

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

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2017-03-31
        • 1970-01-01
        • 1970-01-01
        • 2023-03-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多