Spark专题-第三部分:性能监控与实战优化(1)-认识spark ui。

Spark UI 的核心功能与架构

Spark UI 是 Spark 内置的 Web 界面,默认端口为 4040,提供作业执行的实时监控和历史记录查看。主要功能模块包括:

  • Jobs:显示所有作业的列表、状态及执行计划
  • Stages:展示作业分阶段执行详情,包括任务数量、耗时等
  • Storage:显示 RDD 缓存情况和内存使用量
  • Environment:展示 Spark 配置参数和环境变量
  • Executors:提供执行器资源使用情况监控

启动 Spark 应用后,通过 http://<driver-node>:4040 即可访问界面。对于长时间运行的集群,可通过 spark.eventLog.enabled=true 配置历史日志记录。

Jobs 页面深度解析

Jobs 页面是性能调优的第一入口,包含以下关键指标:

  • Duration:作业从提交到完成的总耗时
  • Stages:作业包含的阶段数及完成状态
  • Progress:通过进度条直观显示完成比例

示例代码提交后可在 UI 观察作业划分:

val data = spark.range(1, 10000000)
val transformed = data.filter(_ % 2 == 0).groupBy("id").count()
transformed.show()

该操作会生成两个 Jobs:一个用于执行 show() 触发计算,另一个用于展示数据。通过 DAG 可视化可以清晰看到 filter 和 groupBy 操作的执行顺序。

Stages 页面的性能诊断

每个 Stage 页面提供三个关键维度数据:

  1. Summary Metrics:所有任务的统计指标(最小值/中位数/最大值)
  2. Event Timeline

Spark UI 的核心功能与架构

Spark UI 是 Spark 内置的 Web 界面,默认端口为 4040,提供作业执行的实时监控和历史记录查看。主要功能模块包括:

  • Jobs:显示所有作业的列表、状态及执行计划
  • Stages:展示作业分阶段执行详情,包括任务数量、耗时等
  • Storage:显示 RDD 缓存情况和内存使用量
  • Environment:展示 Spark 配置参数和环境变量
  • Executors:提供执行器资源使用情况监控

启动 Spark 应用后,通过 http://<driver-node>:4040 即可访问界面。对于长时间运行的集群,可通过 spark.eventLog.enabled=true 配置历史日志记录。

Jobs 页面深度解析

Jobs 页面是性能调优的第一入口,包含以下关键指标:

  • Duration:作业从提交到完成的总耗时
  • Stages:作业包含的阶段数及完成状态
  • Progress:通过进度条直观显示完成比例

示例代码提交后可在 UI 观察作业划分:

val data = spark.range(1, 10000000)
val transformed = data.filter(_ % 2 == 0).groupBy("id").count()
transformed.show()

该操作会生成两个 Jobs:一个用于执行 show() 触发计算,另一个用于展示数据。通过 DAG 可视化可以清晰看到 filter 和 groupBy 操作的执行顺序。

Stages 页面的性能诊断

每个 Stage 页面提供三个关键维度数据:

  1. Summary Metrics:所有任务的统计指标(最小值/中位数/最大值)
  2. Event Timeline
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值