(三)5:spark UI详解

spark UI详解

清楚的理解spark UI 的各个阶段有助于进行调优和分析定位问题
如何访问:默认ip:8088,在程序启动时也可看到日志中的UI访问地址

1:UI界面

spark UI
导航栏部分主要分为7大部分
1:job级别的任务执行记录,可看到具体的executor和task执行时间
2:所有stage,stage是按照宽依赖来区分的,因此粒度上要比job更细一些,
划分依据详见:stage的划分
3 :storage页面,我们所做的cache persist等操作,都会在这里看到,可以看出来应用目前使用了多少缓存
4: 代表environment页面,里面展示了当前spark所依赖的环境,比如jdk,lib等等
5 :代表executors页面,这里可以看到执行者申请使用的内存以及shuffle中input和output等数据
6 :streaming所有执行的job,可以看到是否有数据积压,执行时间
7 :这是应用的名字,代码中如果使用setAppName,就会显示在这里

1.1:job详解

主要分为,任务统计区,Active Jobs,Completed Jobs

1:信息统计

User: root								任务提交的用户
Total Uptime: 72.6 h					程序总运行时间
Scheduling Mode: FIFO					调度器

2:Active Jobs:正在运行的job
3:Completed Jobs:已经完成的job

1:job分析

在这里插入图片描述
可查看event timeline查看详细的使用时间,进行job的执行时间分析,进行瓶颈判断
点击dexcribe中的蓝色可查看具体的stage执行详情

2:job的stage

在这里插入图片描述
数据倾斜判断:执行时间的min,max看是否差距较大
下方的stdout可以查看任务的运行日志

3:event timeline理解

一个task对应一个时间线,
绿色executor conputing time:任务计算耗时,应该占用大部分时间,若个别时间很长会导致进入不到下一个任务的执行,影响整体的处理时间。若整体时间都长说明分区太少整体数据量大,可以考虑增加分区数提高并行处理能力
Scheduler Delay:调度用时

1.2:stage

所有的stage汇总,随意点击一个和job的stage中显示是一样的

1.3:storage

1.4:environment

当前spark程序所依赖的环境,比如jdk,lib。所提供额其他配置参数等等

1.5:executors

总executor数,可查看该页面的gc时间,判断所分配的资源是否足够,若报红基本就是资源不够用。也可看各个executor运行状态等

1.6:streaming

在这里插入图片描述
可查看是否有数据积压,结合job的timelines进行问题定位
整体的处理时间保持在虚线以下即可

2:程序日志

streaming程序日志保存在hdfs上,可下载查看:
默认路径/tmp/logs/root/logs
查看:hadoop fs -ls /tmp/logs/root/logs
下载:hadoop fs -get /tmp/logs/root/logs
root为提交的用户,该路径下就是所有的提程序的日志。

  • 2
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值