监视 Apache Spark 应用程序资源利用率

“资源”选项卡下的执行程序使用情况图直观显示 Spark 执行器在 Spark 执行期间近乎实时地为当前 Spark 应用程序的分配和利用率。 该图还提供交互式体验,允许你通过在给定时刻单击正在运行的执行程序来查看 Spark 作业和任务。 目前,只有 Spark 运行时版本 3.4 及更高版本支持此功能。

“资源”选项卡

单击“资源”选项卡访问具有四个不同的折线图的图形,每个图都描绘了不同的执行程序状态:运行空闲分配,以及 最大实例

显示监视资源使用情况的屏幕截图。

  • 运行:这显示了 Spark 应用程序用于运行 Spark 作业和任务的实际核心数。

  • 空闲:表示 Spark 应用程序运行时可用但未使用的内核数。

  • 已分配:这指在 Spark 应用程序运行期间分配的核心

  • 最大实例数:这表示可以分配给 Spark 应用程序的最大核心数。

切换颜色图例以选择或取消选择资源利用率图表中的相应图形。

显示图形选择图表的屏幕截图。

资源利用率图是交互式的。 将鼠标悬停在正在运行的执行程序核心图上时,将显示核心摘要和相应的执行程序信息。 单击正在运行的执行程序核心行中的某个点将显示有关该特定时刻相应执行者和作业的详细信息,显示在图形底部。

显示正在运行的执行程序核心分配详细信息的屏幕截图。

注意

在某些情况下,在某些时间点,任务数可能超过执行程序核心(即任务编号 > 执行程序核心数/spark.task.cpus) 的容量。 这是预期的,因为任务被标记为正在运行,以及在执行程序核心上的实际执行之间可能存在时间差距。 因此,某些任务可能显示为正在运行,但它们不会在任何核心上主动运行。

有关 Fabric Spark 监视、Spark 应用程序监视和 Notebook 上下文监视的概述,可以参考: