MapReduce的源码分析

map端的输出是reduce端的输入。

切片的信息

设置块的最大值和最小值

设置切片的最大值和最小值

设置reduce  task的个数

如果reduce环节为0,那么就是说没有reduce环节

如果reduce的个数不为零,那么reduce阶段就有两个环节:分区和排序

map阶段有一个run方法

 

偏移量:

map端的源码分析:

partition的源码分析

在框架默认的情况下,reduce的数量是一个。

partition分区器的个数

环形缓冲区的设定

 spill溢写磁盘

排序器:默认是快速排序

 job阶段的比较器

combiner:map端的预聚合

combiner默认是没有的,是人为加上去的

 溢写线程

环形缓冲区和赤道

reduce 端的源码分析:

reduce端也有排序,但是reduce端的排序是一种归并排序方法。

 

 

 查看用户设置比较器没有,分组比较器、排序比较器

 

  

猜你喜欢

转载自blog.csdn.net/wyqwilliam/article/details/85221429