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
相关推荐
靠谱杨9 天前
CDA LEVEL 1新大纲2023添加的内容
大数据·数据仓库·面试·职场和发展·跳槽·etl·etl工程师
靠谱杨11 天前
数据仓库、大数据平台和数据中台都是指什么
大数据·数据仓库·etl工程师·数据中台
jlting1951 个月前
StructuredStreaming&Kafka中的实时ETL案例及常见问题
大数据·kafka·etl工程师
fibonacci(n)3 个月前
字段映射和数据转换为什么是数据集成的关键?
大数据·数据库·etl·etl工程师
@听风吟4 个月前
大数据ETL工具(Sqoop, DataX, Kettle)对比
大数据·sqoop·etl·etl工程师
中台小A5 个月前
ETL工程师角度下的SQL优化
数据仓库·sql·etl工程师
wuwolita1235 个月前
主流大数据调度工具DolphinScheduler之数据采集
大数据·hive·数据分析·etl工程师
沙漏无语6 个月前
批量去重合并文件夹中所有的excel——kettle开发43
excel·etl工程师
逆风就重开6 个月前
如何成为-10x工程师:反向教学大数据开发实际工作中应如何做
大数据·数据仓库·职场发展·etl工程师
逆风就重开6 个月前
大数据开发流程解析
大数据·数据库·数据仓库·etl工程师