Advertisement

MapReduce编程:第一课:基础知识

阅读量:

MapReduce编程基础

MapReduce作业通常被划分为两个主要阶段,即映射阶段与归约阶段。

Map任务

map任务可划分为四个具体环节:record reader、mapper、combiner以及partitioner。map任务所产生的输出结果被定义为中间键,该结果将被传输至reducer进行进一步处理。

1.record reader

record reader 的主要功能是将输入的split拆分并转化为记录形式。其核心目标在于对输入数据进行解析,但并不涉及记录内容本身的处理。该组件负责将原始数据转换为键值对的结构,随后将其传输至mapper进行后续处理。通常情况下,键对应于数据在文件中的具体位置,而值则表示构成记录的数据内容。

2.map

在mapper阶段,用户自定义的map函数通过对record reader解析出的每一个键/值对进行处理,生成零个或多个新的键/值对作为输出。其中,所选择的键/值对对于提升MapReduce任务的整体执行效率具有关键作用。键决定了数据在reducer端进行分组的方式,而值则构成了reducer需要进行处理的数据内容。

3.Combiner模块设计与实现

combiner作为一种可选的本地reducer,其主要功能是在map阶段对数据进行聚合操作(需注意,

全部评论 (0)

还没有任何评论哟~