Hadoop的MapReduce框架中map和reduce的各自任务(能力工场--整理)

map处理任务

原始文件得到的键值对>>>>>map的形参

1.1 读取输入文件,把每一行解析成键值对(注意键值对key的值,行号),每一个键值对调用一次map函数


1.2 对传入的键值对,覆盖map函数,实现自己的逻辑,处理键值对,输出新的键值对(逻辑程序员自己实现,注意上下文变量),每一行产生新的键值对;


1.3 对键值对进行分区,根据键值对分区(key)(目前所有的键值对在一个区)


1.4 对不同的分区数据排序分组,把相同key的value方法放入一个集合中


1.5 (可选)规约,大的数据变成小的数据




reduce处理任务

分组后的map输出(如何确定)>>>>>reduce形参

2.1 对多个map任务的输出按照不同分区,通过网络copy到不同的reduce节点(分区的个数...)


2.2 在reduce节点,对多个map传来的数据进行合并排序,得到新的键值对


2.3 实现自己的reduce函数,实现自己的业务逻辑,处理键值对,得到新的键值对


2.4 对reduce输出的键值对,写入到HDFS中.


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章