执行详细信息

本页面介绍了如何在 Dataflow 监控界面中使用执行详细信息标签页。

概览

Dataflow 在运行作业时,会将流水线的步骤转换为阶段。每个步骤均代表一个转换,而阶段则代表由 Dataflow 执行的单个工作单元。为了优化流水线,Dataflow 可能会将多个步骤组合到一个阶段中。

Dataflow 监控界面中的执行详细信息标签页会显示有关作业各个阶段的信息。您可以使用执行详细信息标签页来排查性能问题,例如:

  • 导致性能瓶颈的缓慢阶段
  • 卡住的阶段无法推进
  • 落后于其他工作器的工作器虚拟机

查看执行详细信息

如需查看作业的执行详细信息,请执行以下步骤:

  1. 在 Google Cloud 控制台中,依次前往 Dataflow > 作业页面。

    转到作业

  2. 选择一个作业。

  3. 点击执行详细信息标签页。

  4. 选择以下视图之一:

    • 阶段进度
    • 阶段工作流
    • 工作器进度(仅限批量作业)

以下各部分分别介绍了这些视图。

阶段进度视图

借助阶段进度视图,您可以观察作业的总体进度,并比较各阶段的相对进度。阶段进度视图的布局因批量作业和流式作业而异。

批量作业的阶段进度

对于批量作业,阶段进度视图会按作业开始时间的顺序显示作业阶段。对于每个阶段,它会显示以下元素:

  • 显示停止时间和结束时间的进度条。
  • 以占阶段总工作量的百分比形式显示阶段进度随时间变化的折线图。
  • 在该阶段花费的总时间。

批量作业的阶段进度视图示例。

如需过滤显示哪些阶段,请点击过滤阶段。如需查看关键路径,请切换关键路径。关键路径是影响整个作业运行时的一系列阶段。例如,它排除了比整体作业更早完成的分支,以及不会延迟下游处理的输入。

阶段信息面板会显示有关阶段的更多详细信息。如需查看某个阶段的详细信息,请点击该阶段的进度条。阶段信息面板会显示有关阶段的以下信息:

  • 状态
  • 进度(以百分比表示)
  • 开始时间和结束时间
  • 此阶段包含的流水线步骤
  • 按实际用时计算的最慢步骤
  • 有关任何 straggler 的详细信息

如果面板未显示,请点击 切换面板“阶段信息”

流式作业的阶段进度

对于流式作业,阶段进度视图具有两种数据新鲜度的可视化图表。数据新鲜度是指数据元素的时间戳与该元素处理时间之间的差异。值越大,表示流水线处理输入数据所需的时间越长。

第一个可视化图表以折线图的形式显示每个阶段的数据新鲜度。如需查看特定时间点的数据新鲜度,请将指针悬停在图表上。如需选择时间范围,请使用时间选择器,或点击图表并拖动以选择范围。如需过滤显示哪些阶段,请点击过滤阶段

该图表还会突出显示数据中的异常值:

  • 潜在的缓慢:数据新鲜度超过所选时段的第 95 百分位。
  • 潜在的卡顿:数据新鲜度超过所选时段的第 99 百分位。

第二个可视化图表以一系列条形图显示各个阶段。各个阶段按拓扑顺序排列。没有后代的阶段会先显示,后跟其后代。条形的长度表示数据新鲜度。 如需查看特定时间点的数据新鲜度值,请点击图表。条形会更新,以显示所选时间的数据新鲜度。

下图显示了一个包含四个阶段的作业。在所选时间戳,数据新鲜度介于 9 秒到 13 秒之间。

流式作业的阶段进度视图,显示数据新鲜度在 8 到 13 秒之间。

下图显示了已选择不同时间戳的同一作业。此时,所有阶段的数据新鲜度都超过 4 分钟,这表明流水线可能卡住了。

流式作业的阶段进度视图,显示了数据新鲜度超过 4 分钟。

阶段信息面板会显示有关阶段的更多详细信息。如需查看某个阶段的详细信息,请点击该阶段的进度条。阶段信息面板会显示有关阶段的以下信息:

  • 状态
  • 系统延迟时间:数据项等待处理的时间上限
  • 数据水印:此阶段的数据输入预估完成时间
  • 有关任何 straggler 的详细信息
  • 此阶段包含的流水线步骤

如果面板未显示,请点击 切换面板“阶段信息”

阶段工作流

阶段工作流视图以工作流图表的形式显示作业阶段。如需查看某个阶段的详细信息,请点击该阶段对应的框。

阶段工作流视图,显示了作业的执行阶段的层次结构。

对于批量作业,请点击关键路径,以仅查看对作业整体运行时间有直接影响的阶段。

工作器进度

对于批量作业,工作器进度视图会显示特定阶段的工作器。此视图不适用于流式作业。如需访问此视图,请选择工作器进度,然后在按阶段过滤工作器中选择相应阶段。 或者,您也可以从阶段进度视图激活此视图,如下所示:

  1. 阶段进度视图中,识别您要查看的阶段。
  2. 将指针悬停在该阶段对应的条形上。
  3. 阶段卡片中,点击查看工作器。系统会显示工作器进度视图,并预先选中相应阶段。

每个条形均映射到一个调度到工作器的工作项。跟踪工作器上 CPU 利用率的火花谱线图在每个工作器处,便于您更轻松地发现利用率过低的问题。

工作器进度视图。工作器具有指示工作项调度和 CPU 利用率的条形图和火花谱线图。

后续步骤