对比方向 | MapReduce | SparkHash |
---|---|---|
collect | 在内存中构造了一块数据结构用于map输出的缓冲区 | 没有环形缓冲 |
sort | map输出的数据排序 | map数据没有排序 |
merge | 对磁盘上的多个spill文件最后进行合并成一个输出文件 | 在map端没有merge过程, |
copy | 框架jetty | netty或者直接socket流 |
本地文件 | 通过网络拖取数据 | 不通过网络框架,对于本节点上的map输出文件,采用本地读取的方式 |
copy | 过来的数据存放位置,先放在内存,内存放不下是写道磁盘 | 一种方式全部放在内存;另一种方式先放在内存,放不下时写到 磁盘 |
merge sort | 最后会对磁盘文件和内存中的数据进行合并排序 | 对采用另一种方式时也会有合并排序的过程 |
MapReduce与Spark的shuffle的比较
最新推荐文章于 2021-03-07 16:41:32 发布