12-何为分,何为合-Mapper&Reducer介绍

本文详细介绍了Hadoop MapReduce的核心组件Mapper和Reducer。Mapper处理输入记录生成中间键值对,Reducer接收Mapper输出进行聚合计算。Mapper数量基于输入数据分片,Reducer数量可设置,用于优化负载和容错。MapReduce处理过程中,键值对是数据处理的基本单位,由InputSplit和RecordReader转换生成。
摘要由CSDN通过智能技术生成

Mapper&Reducer介绍

1 Mapper&Reducer概述

MapReduce是Hadoop进行数据处理的核心组件。Hadoop MapReduce是一个软件框架,通过它我们可以非常轻松的写出应用程序来处理存储在Hadoop分布式文件系统中的各种结构化和非结构化的数据。MapReduce工作分成两个阶段:Map阶段和Reduce阶段。每个阶段都以键值对作为输入和输出。

Mapper是Hadoop数据处理的第一个阶段,它处理每一条来自RecordReader的输入记录并生成键值对形式的中间结果。Hadoop Mapper在本地磁盘存储中间输出。

在这里插入图片描述

Reducer接收Mapper的输出(中间键值对),并逐一处理,最后生成输出。Reducer的输出是最终输出,将存储到HDFS中。通常,在Hadoop Reducer中,我们完成聚合或者分类求和计算。

我们本节将介绍什么是MapReduce Mapper,它是如何生成键值对的,什么是InputSplit和RecordReader,以及mapper是怎样工作的。我们还将讨论Hadoop MapReduce运行任何程序时Mapper的数量,以及这个Mapper数量是如何计算出来的。

同时,我们还会介绍什么是Reducer,Reducer又分为哪些阶段,有何不同,Hadoop reducer类的功能。我们还将讨论在Hadoop中需要多少reducer以及如何改变这个reducer数量。

在这里插入图片描述

2 Hadoop Mapper

Hadoop Mapper任务处理每个输入记录并且生成一个新的<key,value>对。这个<key,value>对和输入的键值对完全不同。在mapper作业中,输出是所有<key,value>对构成的集合。在写入每个mapper作业的输出之前,会基于key进行分区和排序。分区会将每个key的所有值分到一组。

MapReduce框架为每个InputSplit(输

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值