查看计算指标

本文介绍如何使用 Azure Databricks UI 中的本机计算指标工具收集关键硬件和 Spark 指标。 指标 UI 可用于通用和作业计算。

指标几乎实时可用,正常延迟不到一分钟。 指标存储在 Azure Databricks 托管的存储中,而不是客户的存储中。

这些新指标与 Ganglia 有何不同?

新的计算度量 UI 可以更全面地查看群集的资源使用情况,包括 Spark 消耗和内部 Databricks 进程。 相比之下,Ganglia UI 仅度量 Spark 容器消耗量。 这种差异可能会导致两个界面之间的指标值出现偏差。

访问计算指标 UI

若要查看计算指标 UI,请执行以下操作:

  1. 单击边栏中的 “计算”
  2. 单击要查看其指标的计算资源。
  3. 单击“指标”选项卡。

过去 24 小时的群集指标

默认会显示硬件指标。 若要查看 Spark 指标,请单击标有“硬件”的下拉菜单并选择“Spark”。 如果实例启用了 GPU,还可以选择 GPU。

按时间段筛选指标

可以通过使用日期选取器筛选器选择时间范围来查看历史指标。 指标每分钟收集一次,因此你可以按过去 30 天内的任何日期、小时或分钟范围进行筛选。 单击日历图标以从预定义的数据范围中进行选择,或者在文本框内单击以定义自定义值。

注意

图表中显示的时间间隔会根据你正在查看的时间长度进行调整。 大多数指标是基于当前查看的时间间隔的平均值。

还可以通过单击“刷新”按钮获取最新指标。

查看节点级别的指标

可以通过单击“计算”下拉菜单并选择要查看其指标的节点,来查看单个节点的指标。 GPU 指标仅在单个节点级别可用。 不会为单个节点提供 Spark 指标。

注意

如果不选择特定节点,结果将在群集内的所有节点(包括驱动程序)上取平均值。

硬件指标图表

可以在计算指标 UI 中查看以下硬件指标图表:

  • 服务器负载分布:此图表显示每个节点在过去一分钟内的 CPU 利用率
  • CPU 利用率:在每种模式下花费的 CPU 时间百分比,基于 CPU 总秒数成本。 根据图表中显示的时间间隔计算指标的平均值。 以下是受跟踪的模式:
    • guest:如果运行的是虚拟机,则代表这些虚拟机使用的 CPU
    • iowait:等待 I/O 的时间
    • idle:CPU 闲置的时间
    • irq:中断请求所用的时间
    • nice:谦让度为正(即优先级比其他任务低)的进程使用的时间
    • softirq:软件中断请求所用的时间
    • 窃取:如果你是虚拟机,则计算其他虚拟机从你的 CPU“窃取”的时间
    • system:在内核中花费的时间
    • user:在用户空间花费的时间
  • 内存利用率:每种模式的总内存使用率(以字节为单位),根据图表中显示的时间间隔计算平均值。 将跟踪以下使用类型:
    • 已用:已用内存(包括计算上运行的后台进程使用的内存)
    • free:未使用的内存
    • buffer:内核缓冲区使用的内存
    • cached:操作系统级的文件系统缓存使用的内存
  • 内存交换利用率:每种模式的总内存交换使用率(以字节为单位),根据图表中显示的时间间隔计算平均值。
  • 可用文件系统空间:每个装入点的总文件系统使用率(以字节为单位),根据图表中显示的时间间隔计算平均值。
  • 通过网络接收:每个设备通过网络接收的字节数,根据图表中显示的时间间隔计算平均值。
  • 通过网络传输:每个设备通过网络传输的字节数,根据图表中显示的时间间隔计算平均值。
  • 活动节点数:显示给定的计算在每个时间戳所示时间的活动节点数。

Spark 指标图表

可以在计算指标 UI 中查看以下 Spark 指标图表:

  • 服务器负载分布:此图表显示每个节点在过去一分钟内的 CPU 利用率
  • 活动任务数:在任何给定时间执行的任务总数,根据图表中显示的时间间隔计算平均值。
  • 失败的任务总数:执行程序中失败的任务总数,根据图表中显示的时间间隔计算平均值。
  • 已完成的任务总数:执行程序中已完成的任务总数,根据图表中显示的时间间隔计算平均值。
  • 任务总数:执行程序中所有任务(正在运行、失败和已完成)的总数,根据图表中显示的时间间隔计算平均值。
  • 随机读取总数:随机读取数据的总大小(以字节为单位),根据图表中显示的时间间隔计算平均值。 Shuffle read 表示某个阶段开始时所有执行程序上的序列化读取数据总和。
  • 随机写入总数:随机写入数据的总大小(以字节为单位),根据图表中显示的时间间隔计算平均值。 Shuffle Write 是在传输之前(通常是某个阶段结束时)所有执行程序上所有写入序列化数据的总和。
  • 总任务持续时间:JVM 在执行程序上执行任务所花费的总运行时间(以秒为单位),根据图表中显示的时间间隔计算平均值。

GPU 指标图表

可以在计算指标 UI 中查看以下 GPU 指标图表:

  • 服务器负载分布:此图表显示每个节点在过去一分钟内的 CPU 利用率
  • 每 GPU 解码器利用率:GPU 解码器利用率的百分比,根据图表中显示的时间间隔计算平均值。
  • 每 GPU 编码器利用率:GPU 编码器利用率的百分比,根据图表中显示的时间间隔计算平均值。
  • 每 GPU 帧缓冲区内存利用率字节:帧缓冲区内存利用率(以字节为单位),根据图表中显示的时间间隔计算平均值。
  • 每 GPU 内存利用率:GPU 内存利用率的百分比,根据图表中显示的时间间隔计算平均值。
  • 每 GPU 利用率:GPU 利用率的百分比,根据图表中显示的时间间隔计算平均值。

疑难解答

如果一段时间内的指标不完整或缺失,可能是以下问题之一:

  • 负责查询和存储指标的 Databricks 服务发生中断。
  • 客户方的网络问题。
  • 计算处于运行不正常状态。