spark的sparkUI如何解读?

简介:

spark的sparkUI如何解读?

以spark2.1.4来做例子

Job - schedule mode

进入之后默认是进入spark job 页面

这个说明有很详细的解释,spark有两种操作算子:转换算子(transformation)和执行算子(Action)。当执行到行为算子的时候,就出发了一个Job作业,比如count()和saveAsTextFile()。

sparkJob页面头部有几个,最重要的是Schedule mode,表示的是Job的调度模型。如果多个线程调用多个并行的job,这些job就会被分配调用,这里就有个调度模型,一般是FIFO模型,先进先出模型。但是在spark0.8之后,就支持了一种FAIR模型,FAIR模型是一种公平模型,相当于每个任务轮换使用资源等,这样能使的小job能很快执行,而不用等大job完成才执行了。

Job - Event Timeline

这个就是用来表示调度job何时启动,何时结束,并且excutor何时加入。

我们可以很方便看到哪些job已经运行完成,使用了多少excutor,哪些正在运行。

点击进入每个job,我们就可以看到每个job的detail

Details for Job

在这个页面我们能看到job的详情。一个job会被分为一个或者多个stage

这里也有event timeline,告诉我们这个job中每个stage执行时间。

这里多了一个DAG可视化的图

DAG

DAG图是有向无环图的意思。spark中使用有向无环图来显示流程。

DAG也是一种调度模型,在spark的作业调度中,有很多作业存在依赖关系,所以有的作业可以并行执行,有的作业不能并行执行。把这些作业的内部转向关系描绘清楚,就是一个DAG图。使用DAG图,就能很清晰看到我们的作业(RDD)哪些先执行,哪些后执行,哪些是并行执行的。

当调用了一个行为算子的时候,前面的所有转换算子也会一并提交给DAG调度器,DAG调度器把这些算子操作分为不同的stage,这个就是stage的由来。而DAG在画stage的时候也会产生出一个DAG图,就是这里的图了。

点击每个stage,我们就能看到这个stage执行的任务(Task)了。

Details for Stage

标题

标题代表这是第几号stage,第几次尝试。

Show Additional Metrics

Scheduler Delay

调度延迟时间,包含把任务从调度器输送给excutor,并且把任务的结果从excutor返回给调度器。如果调度时间比较久,则考虑降低任务的数量,并且降低任务结果大小

Task Deserialization Time

反序列化excutor的任务,也包含读取广播任务的时间

Shuffle Read Blocked Time

任务shuffle时间,从远端机器读取shuffle数据的时间

Shuffle Remote Reads

从远端机器读取shuffle数据的时间

Getting Result Time

从worker中获取结果的时间

// 这里应该还有一些其它的各种指标,等以后看代码的时候再补充。

在用图形表示完之后还有一个summary的时间统计,告诉你每个阶段的时间,所有任务的分布图。

Aggregated Metrics by Executor

这个矩阵告诉我们每个excutor的执行情况。

Tasks

告知每个任务的执行情况。

Environment

显示所有的环境变量

Excutors

显示每个excutor的统计情况

参考文章

http://www.csdn.net/article/2015-07-08/2825162
https://jaceklaskowski.gitbooks.io/mastering-apache-spark/content/spark-webui-StagePage.html



本文转自轩脉刃博客园博客,原文链接:http://www.cnblogs.com/yjf512/p/7764687.html,如需转载请自行联系原作者



相关文章
|
6月前
|
存储 分布式计算 资源调度
Spark性能优化之SparkUI
Spark性能优化之SparkUI
120 0
如何使用X-Pack Spark的YarnUI、SparkUI、Spark日志、任务运行状况的分析
概述 X-Pack Spark目前是通过Yarn管理资源,在提交Spark 任务后我们经常需要知道任务的运行状况,例如在哪里看日志、怎么查看每个Executor的运行状态、每个task的运行状态,性能瓶颈点在哪里等信息。
3694 0
|
8天前
|
分布式计算 大数据 Apache
ClickHouse与大数据生态集成:Spark & Flink 实战
【10月更文挑战第26天】在当今这个数据爆炸的时代,能够高效地处理和分析海量数据成为了企业和组织提升竞争力的关键。作为一款高性能的列式数据库系统,ClickHouse 在大数据分析领域展现出了卓越的能力。然而,为了充分利用ClickHouse的优势,将其与现有的大数据处理框架(如Apache Spark和Apache Flink)进行集成变得尤为重要。本文将从我个人的角度出发,探讨如何通过这些技术的结合,实现对大规模数据的实时处理和分析。
36 2
ClickHouse与大数据生态集成:Spark & Flink 实战
|
30天前
|
存储 分布式计算 算法
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
大数据-106 Spark Graph X 计算学习 案例:1图的基本计算、2连通图算法、3寻找相同的用户
58 0
|
30天前
|
消息中间件 分布式计算 NoSQL
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
大数据-104 Spark Streaming Kafka Offset Scala实现Redis管理Offset并更新
38 0
|
30天前
|
消息中间件 存储 分布式计算
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
大数据-103 Spark Streaming Kafka Offset管理详解 Scala自定义Offset
75 0
|
10天前
|
SQL 机器学习/深度学习 分布式计算
Spark快速上手:揭秘大数据处理的高效秘密,让你轻松应对海量数据
【10月更文挑战第25天】本文全面介绍了大数据处理框架 Spark,涵盖其基本概念、安装配置、编程模型及实际应用。Spark 是一个高效的分布式计算平台,支持批处理、实时流处理、SQL 查询和机器学习等任务。通过详细的技术综述和示例代码,帮助读者快速掌握 Spark 的核心技能。
33 6
|
8天前
|
存储 分布式计算 Hadoop
数据湖技术:Hadoop与Spark在大数据处理中的协同作用
【10月更文挑战第27天】在大数据时代,数据湖技术凭借其灵活性和成本效益成为企业存储和分析大规模异构数据的首选。Hadoop和Spark作为数据湖技术的核心组件,通过HDFS存储数据和Spark进行高效计算,实现了数据处理的优化。本文探讨了Hadoop与Spark的最佳实践,包括数据存储、处理、安全和可视化等方面,展示了它们在实际应用中的协同效应。
41 2