spark ui 指南

spark ui 指南

  • [++++1.sparkUI 基本介绍++++](#1.sparkUI 基本介绍)
  • ++++2.jobs页面++++
  • [++++3.stages 页面++++](#3.stages 页面)
  • [++++4.storage 页面++++](#4.storage 页面)
  • [++++5.environment 页面++++](#5.environment 页面)
  • [++++6.ececutor 页面++++](#6.ececutor 页面)
  • [++++7 sql 页面++++](#7 sql 页面 )

spark ui 是反应一个spark 作业执行情况的页面,通过查看作业的执行情况,分析作业运行的状态.

1.sparkUI 基本介绍

进入运行主页面如下,主要有6各部分 任务实例: http://10.71.190.31:18081/history/application_1638893170232_266874/jobs/

|---|-------------|-----------------|-------------------------------------------------------------------------------------------------------------------------|
| | 标签页 | 描述 | |
| 1 | jobs | spark作业执行的job | |
| 2 | stages | 所有stage信息 | The Stages tab displays a summary page that shows the current state of all stages of all jobs in the Spark application. |
| 3 | storage | rdd存储信息 | RDDs and DataFrame持久化 |
| 4 | environment | 作业配置参数 | JVM, Spark, and system 属性 |
| 5 | executors | 展示作业executors信息 | 任务executor创建信息, 包括 内存 ,磁盘使用 ,task ,shuffle信息) |
| 6 | sql | 解析sql 的信息 | |

2.jobs页面

本次任务有14个job

2.1 event_time

按照时间顺序executor 的开始和结束时间点(added, removed)

2.2 job tab页面

每个job的信息包括 job id, description描述 , 提交时间, 耗时, stages数量, task 运行情况

2.3 job详情页面

点击job 描述可以进入对应的job详情页面

  • Status: SUCCEEDED (running, succeeded, failed)
  • Submitted: 2021/12/14 11:48:06
  • Duration: 1.5 min
  • Associated SQL Query: 2 job 的sql tab 连接
  • [Completed Stages:](#Completed Stages:) 1 每个状态的stage 数量 (active, pending, completed, skipped, failed)
  • [Skipped Stages:](#Skipped Stages:) 8

Event Timeline

DAG Visualization : job 的有向无环图, 点表示: RDDs or DataFrames 边表示: rdd上的操作

stage根据active, pending, completed, skipped, and failed状态分类的列表

input : 从storage 读取字节数

output: 写入storage 字节数

shuffle read : shuffle 和 记录读取的字节数, 包括 本地数据读取和其他executor 节点读取字节数

shuffle write : 写入磁盘的字节和记录数,在下一个stage的shuffle 阶段读取.

注意看到stage 19-24 是 跳过了, 原因是spark shuffle 的数据会写到磁盘固化,当上游当上游stage(19-24)和之前执行过的stage 相同时,可以直接用之前的结果.

问题 :从图可以看出job之间是否可以并行?

3.stages 页面

3.1 stages 页面会显示作业所有的stage信息, 同样根据状态分组(active, pending, completed, skipped, and failed)

3.2 Stage detail

所有task 的总时间, 统计矩阵, shuffle 信息, 所属的job id

dag图上 展示一些操作名称: BatchScan, WholeStageCodegen, Exchange, etc

task 之间是否可以并行?

4.storage 页面

作业执行过程中缓存信息,包含 rdd 的大小和分部信息

运行时显示,但是B站的spark ui 点了没反应

5.environment 页面

作业运行环境和参数

查看 driver 和 executor 实际配置的大小

driver=6g executor=9g

6.ececutor 页面

作业包含的executor统计指标

正在运行中的任务有 thread dump ,跟踪task 的执行过程, 目前只能点开 driver 的节点, executor 节点 点击不开.

7 sql 页面

spark SQL 的执行情况, 一条sql 在spark 中如何执行. 但是B站的spark ui 点了没反应,需要从另外的入口进去, associated sql query 点击

detail 展示sql 在sqprk 中解析和优化的,B站的这一模块只展示了 3和4 部分

1.analysis 2.logical optimization 3. physical planing 4. code generation

问题

1.job driver executor task 关系

物理划分: client 提交→ appmaster 申请资源启动 → driver 启动→ executor启动 → code 执行 → 资源回收释放

逻辑划分 action → job → stage → task

2.判断任务倾斜

运行时间长?

参考链接:

1.官网: ++++https://spark.apache.org/docs/3.2.0/web-ui.html#stages-tab++++

  1. spark 入门 https://www.cnblogs.com/xing901022/p/6445254.html
相关推荐
fibonacci(n)1 个月前
字段映射和数据转换为什么是数据集成的关键?
大数据·数据库·etl·etl工程师
@听风吟3 个月前
大数据ETL工具(Sqoop, DataX, Kettle)对比
大数据·sqoop·etl·etl工程师
中台小A3 个月前
ETL工程师角度下的SQL优化
数据仓库·sql·etl工程师
wuwolita1234 个月前
主流大数据调度工具DolphinScheduler之数据采集
大数据·hive·数据分析·etl工程师
沙漏无语4 个月前
批量去重合并文件夹中所有的excel——kettle开发43
excel·etl工程师
逆风就重开4 个月前
如何成为-10x工程师:反向教学大数据开发实际工作中应如何做
大数据·数据仓库·职场发展·etl工程师
逆风就重开5 个月前
大数据开发流程解析
大数据·数据库·数据仓库·etl工程师
WX151356290647 个月前
最新消息:在美国销售含纽扣电池商品需要做UL4200A:2023安全标准测试
安全·etl工程师
爱吃土豆的马铃薯ㅤㅤㅤㅤㅤㅤㅤㅤㅤ7 个月前
ETL工程师介绍
数据仓库·etl工程师
爱喝水的小猪7 个月前
【数据仓库】血缘关系分析工具适用场景、常见产品、功能介绍
数据仓库·业界资讯·etl·etl工程师·改行学it