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)
还没有任何评论哟~
