大数据运算解决方案MapReduce
Hadoop的分布式计算模型MapReduce,最早是Google提出的,主要用于搜索领域,解决海量数据的计算问题。MapReduce有两个阶段组成:Map和Reduce,用户只需实现map()和reduce()两个函数,即可实现分布式计算
以统计某个文件中Deer、Car和 Bear三个单词的数量为例,如下图,来说明MapReduce是如何实现快速高效的分布式存储计算的。
计算过程如下: 1、文件准备;
2、文件切片:这里切分为三片(作业并行处理,效率加倍哦);
3、Map过程:接受一个键值对,产生一组键值对,比如(Deer,1),代表Deer为键,1为值,代表Deer单词的数量。
4、派发过程:Shuffle将键值对派发给Reduce;
5、Reduce过程:将相同键的值累加(计算靠近的数据);
6、输出计算结果。
MapReduce技术特征总结:
1、自动并行化:系统自动进行作业并行化处理;
2、自