赞
踩
点击Event Timeline后可以看到以下信息:
时间线会显示Executor加入和退出的时间点, 以及job执行的起止时间.
有关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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。