Spark ShuffleExecutor是如何fetch shuffle的数据文件
Posted raintungli
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spark ShuffleExecutor是如何fetch shuffle的数据文件相关的知识,希望对你有一定的参考价值。
1. 前言
在前面的博客中讨论了Executor, Driver之间如何汇报Executor生成的Shuffle的数据文件,以及Executor获取到Shuffle的数据文件的分布,那么Executor是如何获取到Shuffle的数据文件进行Action的算子的计算呢?
在ResultTask中,Executor通过MapOutPutTracker向Driver获取了ShuffID的Shuffle数据块的结构,整理成以BlockManangerId为Key的结构,这样可以更容易区分究竟是本地的Shuffle还是远端executor的Shuffle
2. Fetch数据
在MapOutputTracker中获取到的BlockID的地址,是以BlockManagerId的seq数组
以上是关于Spark ShuffleExecutor是如何fetch shuffle的数据文件的主要内容,如果未能解决你的问题,请参考以下文章
Spark Python/SQL - 如何使用独特的组合进行分组
如何在 SparkR 中将额外的参数传递给 spark.lapply?
spark.mllib源码阅读-优化算法1-Gradient