开发者学堂课程【Hadoop 分布式计算框架 MapReduc:MapReduce 编程规范】学习笔记,与课程紧密联系,让用户快速学习知识。
课程地址:https://developer.aliyun.com/learning/course/94/detail/1480
MapReduce 编程规范
简介:
1、Mapper 阶段
2、Reducer 阶段
3、Driver 阶段
用户编写的程序分成三个部分:Mapper、Reducer和Drive。
1、Mapper 阶段
(1) 用户自定义的 Mapper 要继承自己的父类
(2) Mapper 的输入数据是 KV 对的形式(KV 的类型可自定义)
(3) Mapper 中的业务逻辑写在 map() 方法中
(4) Mapper 的输出数据是 KV 对的形式(KV 的类型可自定义)
(5) map() 方法(MapTask 进程)对每一个<K,V>调用一次
2、Reducer 阶段
(1) 用户自定义的 Reducer 要继承自己的父类
(2) Reducer 的输入数据类型对应 Mapper 的输出数据类型,也是 KV
(3) Reducer 的业务逻辑写在 reduce() 方法中
(4) ReduceTask 进程对每一组相同 k 的 <k,v> 组调用一次 reduce() 方法
3、Driver 阶段
相当于 YARN 集群的客户端,用于提交我们整个程序到 YARN 集群,提交的是封装了 MapReduce 程序相关运行参数的 job 对象