Hadoop-Mapper和Reducer的知识点集合

本文详细介绍了Hadoop MapReduce中的Mapper和Reducer组件,包括它们的作用、过程及重要方法。Mapper负责将输入键值对映射为中间键值对,Reducer则对Mapper的输出进行分组和规约,生成最终结果。Mapper的输出可以被Reducer直接使用,如果Mapper和Reducer的输出格式相同,可以省略某些配置。Mapper包含setup、map、cleanup方法,Reducer主要包括Shuffle、Sort和Reduce三个阶段。Reducer的数量由job.setNumReduceTasks()控制,其输出结果数量等于Reducer个数,若无Reducer则由Mapper决定。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

MapReduce主要分为两个过程:Map和Reduce

Mapper过程:Mapper<K1, V1, K2, V2 >

Reducer过程:Reducer<K2, V2, K3, V3 >

Mapper和Reducer的K2 V2需要保持一致:
当Mapper输出格式与Reducer的输出格式一样时
可以省略job.setOutputKeyClass()与job.setOutputValueClass()设置

Mapper
    将输入键/值对映射到一组中间键/值对。
    将   K1和V1    映射到      K2和V2 
    映射是将输入记录转换为中间记录的单个任务。
        转换后的中间记录不需要与输入记录具有相同的类型。
        给定的输入对可能映射到零或多个输出对。
            执行一次map只对一行记录进行处理,K1V1和K2V2不需要具有相同类型

    Hadoop map - reduce框架为作业的InputFormat生成的每个InputSplit生成一个map任务。
        Mapper实现可以通过JobContext.getConfiguration()访问作业的配置。
            InputFormat对文件进行切分,一般情况文件有几个块就会被切分成几个InputSplit,
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值