当前位置:   article > 正文

SparkUI超详细解释(1)——Jobs_spark显示jobid

spark显示jobid

Jobs

  • Userhadoop账号,和登录hope时需要的User相同
  • Total Uptimespark作业的执行时间,完成的作业=结束时间开始时间,进行中的作业该值会随着刷新在改变。该时间不是所有job的执行时间之和(有并行的job,job与job之间也有时间间隔),也不是最后一个job的结束时间第一个job的提交时间(作业启动到job提交之前还有一些时间)
  • Scheduling ModelJob的调度模式,分为FIFO(先进先出)和FAIR(公平调度)。可以并行的Job,FIFO是谁先提交谁先执行可以理解为JobId小的先执行。FAIR会根据权重决定哪个Job先执行

Event Timeline

点击Event Timeline后可以看到以下信息:

时间线会显示Executor加入和退出的时间点, 以及job执行的起止时间.

Jobs Detail

  • Statusjob的执行状态(running, succeeded, failed)
  • Associated SQL Query:关联到sql页签的query id,点击可以跳到SQL页签具体的query
  • Number of stages per status :(active, pending, completed, skipped, failed)状态下的stage数量
  • Event timeline: 和Jobs中的相同
  • DAG VisualizationDAGdirected acyclic graph),有向无环图,显示该job下执行的stage的可视化图,其中顶点表示RDDs或DataFrames,边表示要应用于RDD的操作。

有关Jobs的自问自答

1.多个job可以并行执行吗?

可以,常见的如多个表join,每读一个表可能是一个job,多个表就是多个job,可以并行执行(前提是资源足够)

2.job是如何划分的?

spark中有两类算子,一类是action(行动)算子,一类是transformation(转换)算子。当遇到action算子时就会划分出一个新的job,action算子常见的有reduce、collect、count等,作者并没有找到和sql关键字的对应关系,笼统的说需要落盘存储的一般都是action算子。

job的划分没有太多的意义,可以不必关注,关注stage的划分更有意义。

3.job detai中为什么有些stage可以被跳过(skipped)

skipped的stage代表是之前以前被其他stage执行过并落盘了,并不需要重新计算,可以直接使用之前的结果。

以上面的DAG图为例,stage17和stage18在其他的job中有其他的stage已经shuffle write数据到磁盘,当前job中的stage在做shuffle read时不需要从头开始scan table

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/655893
推荐阅读
相关标签
  

闽ICP备14008679号