MapReduce原理

 

 1.第一步对输入的数据进行切片,每个分片分配一个map()任务,map()对其中的数据进行计算,对每个数据用键值对的形式记录,然后输出到环形缓冲区(图中sort的位置)

2.map()中输出的数据在环形缓冲区内进行快排,每个环形缓冲区默认大小100M,当数据达到80M时(默认),把数据输出到磁盘上。形成很多个内部有序整体无序的小文件。

3.框架把磁盘中的小文件传到Reduce()中来,然后进行归并排序,最终输出。

 

posted @ 2020-09-01 15:56  hulifang  阅读(111)  评论(0编辑  收藏  举报