1MapReduce 主要功能
1)数据划分和计算任务调度
2)数据/代码相互定位
3)系统优化
4)出错检测和恢复
2运行流程
1首先提交代码,对输入数据源进行切片
2master 调度worker 执行map任务
3worker当中的map任务读取输入源切片
4worker执行map任务,将任务输出保存在本地
5master调度worker执行reduce任务,reduce worker 读取map任务的输出文件
6 执行reduce任务
运行流程详细解析
1PreMap阶段: 将文件分割,排行,列序号。
2Map阶段 :分割成 k,v键值对的形式, Partition 进行分区, combiner:本地规约(相当于loca l reducer, 可选)
在Map 和Reduce阶段 有一个shuffle 的过程
3reduce 阶段 :执行Reduce任务