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程序执行流程如下:
三、基本概念
1 作业(Job)
2 任务(Task)
3 键值对(key/value pair)
Map(),Reduce()函数的输入/输出都是<key,value>的形式