Hadoop-MapReduce基本原理及相关操作
Hadoop-MapReduce基本原理及相关操作 1、 概述 1. 思考 求和:1+3+5+8+2+7+3+4+9+...+Integer.MAX_VALUE。 这是一个简单的加法,如果这道题单台机器线性执行的话,可以想想这个时间的消耗有多大,如果我们换一种思维来进行计算那么这个时间就可以减少很多,将整个加法分成若干个段进行相加,最后将这些结果段再进行相加。这样就可以实行分布式的计算。 上述的方法的思想就是:分而治之,然后汇总。 2. MapReduce分布式计算框架 MapReduce是一种分布式计算模型,由Google提出,主要用于搜索领域,解决海量数据的计算问题。 Apache对其做了开源实现,整合在hadoop中实现通用分布式数据计算。 MR由两个阶段组成:Map和Reduce,用户只需要实现map()和reduce()两个函数,即可实现分布式计算,非常简单。大大简化了分布式并发处理程序的开发。 Map阶段就是进行分段处理。 Reduce阶段就是进行汇总处理。汇总之后还可以进行数据的一系列美化操作,然后再输出。 3. MapReduce原理 MapReduce原理图: 此图借鉴的网上的。具体出处如图上的地址。 2、 Map、Reduce的入门案例 1. 入门案例 1> 实现WordCount ① WcMapper import org.apache.hadoop.io