目录
1.总的图解(❤❤❤最重要❤❤❤)
Map阶段总结:(重要)
reduce阶段总结(重要)
shuffle过程总结(重要)
1.总的图解
图解:
2.Map阶段
我们可以看上面这幅图片,一个文件被切分成不同的block,每一个block分别有个MapperTask处理,MapperTask处理其实就是在运行我们的map方法,每一个MapperTask经过处理之后,进入shuffle阶段,shuffle阶段可以对我们数据进一步处理。处理完成之后交给后面的ReduceTask,ReduceTask执行我们的reduce方法,拿到数据之后,ReduceTask再一次对数据进一步处理,每个ReduceTask会产生一个结果文件,文件以part开头。
Map阶段总结:
总结:
详细步骤:
可配置的参数:
3.Reduce阶段
reduce阶段图示:
reduce阶段总结
详细步骤:
4.shuffle过程
map 阶段处理的数据如何传递给 reduce 阶段,是 MapReduce 框架中最关键的一个流 程,这个流程就叫 shuffle。
shuffle: 洗牌、发牌 ——(核心机制:数据分区,排序,分组,规约,合并等过程)。
shuffle中,分区、规约、排序在map阶段,排序/分组在reduce阶段
shuffle过程图示
shuffle过程总结
shuffle 是 Mapreduce 的核心,它分布在 Mapreduce 的 map 阶段和 reduce 阶段。一般 把从 Map 产生输出开始到 Reduce 取得数据作为输入之前的过程称作 shuffle。