【问题标题】:What is the difference between min_file_process_interval and dag_dir_list_interval in Apache Airflow 1.9.0?Apache Airflow 1.9.0 中的 min_file_process_interval 和 dag_dir_list_interval 有什么区别?
【发布时间】:2018-07-27 12:50:12
【问题描述】:

我们使用的是 Airflow v 1.9.0。我们有 100 多个 dags,实例真的很慢。调度程序仅启动一些任务。

为了减少CPU使用量,我们想调整一些配置参数,即:min_file_process_intervaldag_dir_list_intervaldocumentation 不是很清楚两者的区别

【问题讨论】:

    标签: airflow


    【解决方案1】:

    min_file_process_interval:

    在只有少量 DAG 定义文件的情况下,循环可能会在一分钟内多次处理 DAG 定义文件。要控制 DAG 文件处理的速率,可以将min_file_process_interval 设置为更高的值。此参数确保 DAG 定义文件的处理频率不会超过每 min_file_process_interval 秒一次。

    dag_dir_list_interval:

    由于调度程序可以无限期运行,因此需要定期刷新 DAG 定义目录中的文件列表。刷新间隔由dag_dir_list_interval 配置参数控制。

    来源:谷歌搜索这两个词得到了第一个结果https://cwiki.apache.org/confluence/display/AIRFLOW/Scheduler+Basics

    【讨论】:

    • 如果我错了,请纠正我:每个 dag_dir_list_interval 调度程序都会列出 DAG 定义文件,并且每个 min_file_process_interval 处理这些文件
    • 有道理。
    • 谢谢,@tobi6。您能否详细说明列出 DAG 时究竟发生了什么?我从处理文件中了解到,调度程序将开始考虑新的 DAG,并考虑为下一次 DagRun 更新现有的 DAG。这是正确的理解吗?
    • 我不是 Airflow 的开发者。在 Airflow 聊天中问这个问题可能更合适:gitter.im/apache/incubator-airflow
    【解决方案2】:

    我手动做了一些实验,发现如下,希望能澄清一下。

    min_file_process_interval: 例如,让这设置为 10 秒。这是处理 dag 文件所花费的时间量,这也意味着,在任何 dag 中的任务完成和触发依赖任务之间,最多可能有 10 秒的延迟,因为气流会检查每次触发依赖任务如果上游作业完成,则为 10 秒。

    如果此值较高,您在 dag 中的任务将需要更多时间来触发,但气流会消耗更少的 CPU。

    Airbnb Airflow using all system resources

    dag_dir_list_interval:您放入 dags 文件夹中的任何新的 python dag 文件,都需要很长时间才能被气流处理并显示在 UI 中。 p>

    【讨论】:

      猜你喜欢
      • 2022-11-08
      • 1970-01-01
      • 2012-05-04
      • 2015-08-28
      • 2016-06-23
      • 2016-06-05
      • 2014-06-24
      • 2019-05-01
      • 2018-11-04
      相关资源
      最近更新 更多