欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 焦点 > Hadoop-MapReduce

Hadoop-MapReduce

2025/9/22 17:41:25 来源:https://blog.csdn.net/weixin_42029860/article/details/140734195  浏览:    关键词:Hadoop-MapReduce

Hadoop MapReduce 是一个分布式计算框架,用于编写批处理应用程序。编写好的程序可以提交到 Hadoop 集群上用于并行处理大规模的数据集。

编程模型

MapReduce模型包括两个主要的函数:

  1. Map 函数:它接收输入数据并将其转换为中间键值对(key-value)。Map函数通常用于过滤转换数据。

  2. Reduce 函数:它接收Map函数输出的中间键值对,并将具有相同键的所有值组合起来,以产生最终的输出。Reduce函数通常用于汇总聚合数据。

工作流程

输入分片(InputFormat) -> Map 任务 -> Partitioner进行分片(shuffling) -> 排序(sort,Combiner) -> Reduce 任务 -> 输出

Partitioner

  1. Partitioner(分区器)的作用是将Map任务输出的中间键值对分配(或“分区”)到不同的Reduce任务中。Partitioner确保具有相同键的所有数据都被发送到同一个Reduce任务进行处理。
  2. Partitioner是在Map阶段结束后立即执行的。它的任务是将Map任务输出的所有键值对(key-value pairs)根据键的哈希值分配到不同的Reduce任务中。这个过程称为“分片”(shuffling)

Combiner 

Combiner是一个可选组件,它在Map任务完成后和Reduce任务开始之前运行。Combiner的主要作用是减少数据在Map任务和Reduce任务之间的传输量(数据进行局部聚合),从而提高整个MapReduce作业的效率。

比如:可以将在同一个Mapper中的键值对相同键合并。

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词