当前位置: 首页 > news >正文

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

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

Spark UI 概述

Spark UI 是 Spark 提供的 Web 监控界面,用于实时查看应用程序的执行状态、性能指标和资源配置。

各模块详细解析

1. Jobs 页面

在这里插入图片描述

核心信息区域
**User:** inno                    # 提交作业的用户
**Total Uptime:** 34 min         # 应用总运行时间
**Scheduling Mode:** FIFO        # 调度模式(FIFO/FAIR)
**Completed Jobs:** 48           # 已完成的作业数量
主要功能区域
  • Event Timeline:作业执行时间线可视化
  • Completed Jobs:已完成作业列表,显示执行详情

2. SQL/DataFrame 页面

在这里插入图片描述

表格字段说明
-- 各列含义解析
ID *           : SQL查询的唯一标识符
Description    : 查询描述(通常显示触发查询的代码位置)
Submitted      : 查询提交时间
Duration       : 查询执行耗时
Job IDs        : 关联的Spark Job ID列表
性能分析要点
  • 查询38:执行仅10ms,属于高效查询
  • 查询37:耗时4.5分钟,可能存在性能瓶颈
  • 查询34:关联多个Job([39][48][41][42]),涉及复杂计算

3. Environment 页面

在这里插入图片描述

配置分类
Spark Properties    : Spark核心配置参数
Runtime Information : 运行时环境信息
关键配置参数
# 内存相关配置
spark.buffer.pageSize     = 65536      # 内存页大小
spark.broadcast.blockSize = 65536      # 广播变量块大小
# 动态分配配置
spark.dynamicAllocation.enabled = true  # 启用动态资源分配
# 序列化配置
spark.serializer = ...                 # 序列化器设置

实际SQL执行案例解析

案例:用户行为分析查询

-- 实际执行的Spark SQL
SELECT
user_id,
COUNT(*) as action_count,
AVG(duration) as avg_duration
FROM user_actions
WHERE event_date = '2025-09-04'
AND action_type IN ('click', 'view')
GROUP BY user_id
HAVING COUNT(*) > 10
ORDER BY action_count DESC
LIMIT 100;

在Spark UI中的对应显示

SQL提交
SQL/DataFrame页面-记录查询信息
生成执行计划-拆分为多个Jobs
Jobs页面-显示Job执行详情
Stage页面-显示任务阶段划分
Storage页面-显示数据缓存情况
Environment页面-显示配置参数

性能优化洞察

  1. 查询37耗时分析

  2. 配置优化建议

    # 针对大数据集的优化配置
    spark.conf.set("spark.sql.adaptive.enabled", "true")           # 启用自适应查询
    spark.conf.set("spark.sql.adaptive.coalescePartitions.enabled", "true")  # 自动合并分区
    spark.conf.set("spark.sql.adaptive.skew.enabled", "true")      # 处理数据倾斜

这一篇主要是对spark ui的界面熟悉一下,后面会举出实际的案例进行性能优化

http://www.jsqmd.com/news/7325/

相关文章:

  • 禁止DataGridView自动根据数据源的结构生成列
  • 2025 年压球机厂家 TOP 企业品牌推荐排行榜,新型,高压,节能,双螺旋干粉,对辊,煤粉,超低压压球机公司推荐!
  • 2025 年磨粉机厂家 TOP 企业品牌推荐排行榜,新型磨粉机,超细磨粉机,立式双动力磨粉机,节能磨粉机公司推荐!
  • 2025 年等离子清洗机厂家 TOP 企业品牌推荐排行榜,大气,真空,宽幅,微波,自动化,常压,低温,大腔体,射频,DBD,介质阻挡放电等离子清洗机公司推荐!
  • 基于Java+SSM+Django宠物医院信息管理系统(源码+LW+调试文档+讲解等)/宠物医院软件/宠物医疗管理系统/宠物诊所信息系统/动物医院管理软件/宠物医院信息管理/宠物健康记录系统 - 详解
  • 实用指南:Coze源码分析-资源库-删除数据库-后端源码-基础设施/数据存储层
  • 完整教程:如何优雅的布局,height: 100% 的使用和 flex-grow: 1 的 min-height 陷阱
  • MyBatis缓存架构深度拆解:从PerpetualCache的LRU陷阱到Redis分布式二级缓存防穿透实战 - 详解
  • 2025柔版印刷机厂家 TOP 企业品牌推荐排行榜,塑编袋,编织袋,阀口袋,重包膜,机组式,卫星式,不换版,FFS 重载膜,水泥袋柔版印刷机公司推荐!
  • 9 30 -
  • 2025/10/2
  • Spring 基础核心 - SpringMVC 入门与请求流程
  • (数据结构)链表OJ——刷题练习 - 实践
  • 重测序数据fastp数据质控及fastQC质量评估
  • 8. Spring AI tools/function-call - 教程
  • electron 安装失败
  • LeetCode刷题记录----62.不同路径(Medium) - 详解
  • 机器学习15:自监督式学习(Self-Supervised Learning)① - 实践
  • 2025担保合同律师事务所推荐,专业团队高效解决法律难题!
  • 「补充篇」在Cloudflare上设置并更新SRV记录
  • 10.1 CSP模拟26 改题记录
  • Spring 核心 - AOP 面向切面编程入门, 通俗易懂
  • 2025年筒袋磁力泵实力厂家推荐榜:高效耐用与创新技术深度解
  • 2025电源适配器权威推荐榜:高效稳定、安全耐用的优质品牌之
  • 「LUCKY STUN穿透」IPv4和IPv6分离重定向
  • 实用指南:[Windows] 随手剪-视频合并工具 v0.12多种格式多段视频50多种转场效果
  • 欧易-(OKX)交易所注册及KYC认证全流程指南
  • Window配置WSL(Ubuntu)环境
  • 使用SVCB/HTTPS记录隐藏和固定Web服务端口
  • OI 笑传 #15