shuffle过程:map方法之后,reduce方法之前的数据处理过程称为shuffle过程
在环形缓冲区出来以后,进行分区,排序(快排,对key的索引进行排序,按照字典顺序排),然后可以有combiner过程,进行提前预聚合,再进行溢写。
有多次溢写(因为环形缓冲区100M不止存储数据,还存储了像索引这些的元数据),形成多个溢写文件。
再对溢写文件进行归并排序,形成一个分区的文件,写到磁盘。
reduce task对拉去相同分区的数据,再对相同分区的数据进行归并、排序、分组,使得相同的key进入同一个reduce方法。