MapReduce作业是客户端需要执行的一个工作单元:它包括输入数据、MapReduce程序和配置信息。Hadoop将作业分成若干个任务(task)来执行,其中包括两类任务:map任务和reduce任务。这些任务运行在集群的节点上,并通过YARN进行调度。如果一个任务失败,它将在另一个不同的节点上自动重新调度运行。
MapReduce框架运转在<key,vlaue>键值对上。
整体流程
Map端
Map数据的输入和输出,默认读取数据的组件是TextInputFormat
1.输入数据(input)
2.切片(split) ,Hadoop将MapReduce的输入数据划分成等长的小数据块,称为输入分片(input split)。Hadoop为每一个分片构建一个map任务,并由该任务来运行用户自定义的map函数从而处理分片中的每条记录。
一个分片就是一个由单个map操作来处理的块,每个m