分布式计算框架MapReduce

MapReduce是Hadoop的一个离线计算框架。

MapReduce由JobTracker和TaskTracker组成。JobTracker负责资源管理和作业控制,TaskTracker负责任务的运行。

一 、MapReduce体系结构特点

1 分布式编程架构

2 以数据为中心,更看重吞吐率

3 分而治之

4 Map将一个任务分解成多个子任务

5 Reduce将分解后多个子任务分别处理,并将结果汇总为最终结果

二、 MapReduce体系结构:

Hadoop MapReduce模型主要有Mapper和Reducer两个抽象类。Mapper端主要负责对数据的分析处理,最终转化为Key-Value的数据结构;Reducer端主要是获取Mapper出来的结果,对结果进行统计。

 

 分布式计算框架MapReduce

 

MapReduce程序执行流程如下:

                              ​​​​​​​​​​​​​​分布式计算框架MapReduce

 

三、基本概念

1 作业(Job)

2 任务(Task)

3 键值对(key/value pair)

Map(),Reduce()函数的输入/输出都是<key,value>的形式

 

分布式计算框架MapReduce