hadoop基础学习八-3

wordcount程序介绍

Mapper的输入数据是KV对的形式
Mapper的输出也是KV对的形式

map()是对每一个KV对调用
reduce是对k相同的kv对使用

wordcount的程序流程

mr appmaster

MA 根据数据的分片数据的多少决定启动多少个map task
获取待处理的数据的信息,然后根绝参数的配置,形成一个任务的分配规则

客户端的操作: submit() -》将数据参数提交 -》 YARN -》通过RsourceManager来分配资源给maptask

NodeManager去启动对应数量的maptask

map读取文件
inputFormat 是maptask中的读取文件的真真工作者
outputCollector 输出数据收集器 分区和排序的
inputFormat 的输入丢个Mapper()方法,经过一系列的数据处理后

outputCollector
会将数据分区,多个map的对应的分区给到指定的reducer去处理,这样可以得出,reduce的数量一般和mao的数量基本一致

在map和reduce中间过程有一个shuffle过程,shuffle就是将文件相同的基本分类到一起
都是有appmaster管理的