在气流网络控制台的 DAG 视图中有一个名为“着陆时间”的部分。
从 airbnb 的博客中截取的示例屏幕截图:
但是这是什么意思?文档或其存储库中没有定义。
由于这里的现有答案并不完全清楚,而且这是“气流着陆时间”的热门话题,我去了聊天档案,发现这里引用了原始答案:
Maxime Beauchemin @mistercrunch Jun 09 2016 11:12
it's the number of hours after the time the scheduling period ended
take a schedule_interval='@daily' run for 2016-01-01 that finishes at 2016-01-02 03:52:00
landing time is 3:52
https://gitter.im/apache/incubator-airflow/archives/2016/06/09
Y 轴似乎以小时为单位,而负着陆时间是手动运行作业的结果,因此它们根据计划在“应该完成”之前完成数小时。
我直接问了作者马克西姆。他的回答是landing_time
工作完成时间减去工作应该开始的时间(对于气流,它是预定时期的结束)。
来源: http: //gitter.im/apache/incubator-airflow 这是一个获得帮助的好地方,Maxine 非常友善和乐于助人。但答案并不持久。
landing_time
对我来说,使用示例更容易理解。所以假设我们有一个 dag 计划每天在0 0 * * *
. 这个 dag 有 2 个按顺序执行的任务:
first_task >> second_task
first_task开始于 00:00 和 10 秒,并在 5 分钟后结束。first_task 的landing_time 将是 10 秒。
second_task在 00:07 分钟开始执行,并在 2 分钟后完成。second_task 的landing_time 为 7 分钟。
所以我们只是从任务开始时间中删除 dag execution_date。我通常使用landing_time 作为衡量整个气流系统性能的指标。例如,第一个任务中加载时间的增加似乎意味着调度程序负载很重,或者我们应该调整任务并行化(通过气流.cfg)。
登陆时间:包括重试在内的总时间。