我的定位:中高级人才(框架熟练、Java语法精通、数据库会用、Linux会用、中间件会用、有大数据经验!)
开始,我以为自己什么都知道。后来发现,其实我什么都不知道。

MapReduce02

====================== MapReduce实现 ======================

Input: 一系列key/value对

用户提供两个函数实现: 

  map(k,v) ->list(k1,v1) 

  reduce(k1, list(v1)) -> v2 

(k1,v1) 是中间key/value结果对

Output:一系列(k2,v2)对

====================== MapReduce编程模型 ======================

MapReduce将作业的整个运行过程分为两个阶段: Map阶段和Reduce阶段

Map阶段由一定数量的Map Task组成

  输入数据格式解析:InputFormat

  输入数据处理:Mapper

  数据分组:Partitioner

Reduce阶段由一定数量的Reduce Task组成 

  数据远程拷贝

  数据按照key排序

  数据处理:Reducer

  数据输出格式:OutputFormat

====================== MapReduce编程模型 ======================

Map阶段 ------------->

InputFormat(默认TextInputFormat)

Mapper

Combiner(local reducer)

Partitioner

Reduce阶段 ------------->

Reducer

OutputFormat(默认TextOutputFormat)

 

posted @ 2017-06-25 14:41  想太多先森  阅读(160)  评论(0编辑  收藏  举报