版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SparkShuffle解析ShuffleMapStage与ResultStageShuffle中的任务个数reduce端数据的读取/01基本介绍
ShuffleMapStage与ResultStageShuffleMapStage与ResultStage
在划分stage时,最后一个stage称为finalStage,它本质上是一个ResultStage对象,前面的所有stage被称为ShuffleMapStage。ShuffleMapStage的结束伴随着shuffle文件的写磁盘。ResultStage基本上对应代码中的action算子,即将一个函数应用在RDD的各个partition的数据集上,意味着一个job的运行结束。/02基本介绍
Shuffle中的任务个数SparkShuffle分为map阶段和reduce阶段,或者称之为ShuffleRead阶段和ShuffleWrite阶段,那么对于一次Shuffle,map过程和reduce过程都会由若干个task来执行,那么maptask和reducetask的数量是如何确定的呢?
假设Spark任务从HDFS中读取数据,那么初始RDD分区个数由该文件的split个数决定,也就是一个split对应生成的RDD的一个partition,我们假设初始partition个数为N。Shuffle中的任务个数(一)
初始RDD经过一系列算子计算后(假设没有执行repartition和coalesce算子进行重分区,则分区个数不变,仍为N,如果经过重分区算子,那么分区个数变为M),我们假设分区个数不变,当执行到Shuffle操作时,map端的task个数和partition个数一致,即maptask为N个。Reduce端的stage默认取spark.default.parallelism这个配置项的值作为分区数,如果没有配置,则以map端的最后一个RDD的分区数作为其分区数(也就是N),那么分区数就决定了reduce端的task的个数。Shuffle中的任务个数(二)/03基本介绍
reduce端数据的读取
根据stage的划分我们知道,map端task和reduce端task不在相同的stage中,maptask位于ShuffleMapStage,reducetask位于ResultStage,maptask会先执行,那么后执行的reducetask如何知道从哪里去拉取maptask落盘后的数据呢?reduce端数据的读取(一)reduce端的数据拉取过程如下:maptask执行完毕后会将计算状态以及磁盘小文件位置等信息封装到MapStatus对象中,然后由本进程中的MapOutPutTrackerWorker对象将mapStatus对象发送给Driver进程的MapOutPutTrackerMaster对象;
在reducetask开始执行之前会先让本进程中的MapOutputTrackerWorker向Driver进程中的MapoutPutTrakcerMaster发动请求,请求磁盘小文件位置信息;reduce端数据的读取(二)
当所有的Maptask执行完毕后,Driver进程中的MapOutPutTrackerMaster就掌握了所有的磁盘小文件的位置信息。
此时MapOutPutTrackerMaster会告诉MapOutPutTrackerWorker磁盘小文件的位置信息;
完成之前的操作之后,由BlockTransforService去Executor0所在的节点拉数据,默认会启动五个子线程。每次拉取的数据量不能超过48M(reducetask每次最多拉取48M数据,将拉来的数据存储到Executor内存的20%内存中)。reduce端数据的读取
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 船舶服务员考试题及答案
- 乐山市卫生健康委员会2025年下半年公开选调事业单位工作人员备考题库附答案
- 北京师大附中金鹏科技团专职教师招聘备考题库必考题
- 南昌市劳动保障事务代理中心招聘4名项目外包服务人员参考题库必考题
- 广安市广安区石笋镇人民政府关于2025年选用片区纪检监督员的备考题库附答案
- 招23人!高中可报、2025年茫崖市公安局面向社会公开招聘警务辅助人员备考题库必考题
- 江投国华信丰发电有限责任公司公开招聘劳务派遣制工作人员 备考题库必考题
- 辅警78名!2025年海南州公安局面向社会公开招聘警务辅助人员参考题库附答案
- 雅安中学2025年公开选调事业人员的考试备考题库附答案
- 安全生产执法提示讲解
- 搞笑小品剧本《我的健康谁做主》台词完整版-宋小宝徐峥
- 正大天虹方矩管镀锌方矩管材质书
- 兔子解剖实验报告
- 双减背景下家校共育的问题及策略
- 建设工程第三方质量安全巡查标准
- 管理养老机构 养老机构的服务提供与管理
- 乳化液处理操作规程
- 饭店转让协议合同
- 营建的文明:中国传统文化与传统建筑(修订版)
- 液化天然气气化站安全检查表
- 2022年环保标记试题库(含答案)
评论
0/150
提交评论