首页 > 其他分享 >MapReduce分区的学习

MapReduce分区的学习

时间:2023-10-04 21:11:33浏览次数:34  
标签:Mapper 定义 自定义 分区 reduce MapReduce 学习

1、概念和原理

同一个分区的数据会发送给同一个reduce;

可以简单解释为————标记一样,放到一个reduce里面:

2、代码编写步骤(以中奖编号是否>15进行分区)

1、定义Mapper

可以自定义名称为PartitionMapper,并继承Mapper类:

并重写map方法:

2、自定义partitioner

可以自定义名称为MyPartitioner,并继承于Partitioner类:

并重写getPartition方法:

3、定义reducer逻辑(无需做任何处理)

自定义名称为PartitionerReducer的类,并继承于Reducer:

4、定义主类JobMain

main方法:

run方法:

第三步--指定分区类

四、五、六步采用默认方式(后面会学到的)

既然有分区的话,就需要在第七步设置reduceTask的个数:

标签:Mapper,定义,自定义,分区,reduce,MapReduce,学习
From: https://www.cnblogs.com/liuzijin/p/17742636.html

相关文章

  • c# winfom从0学习开发开发OA、BPM工作流程与自定义表单系统(一)设计前准备
    使用DevComponents.DotNetBar2.dllmessagebox样式不能满足当前的要求,所以就把消息框使用了窗体自定义样式展示 窗体的具体代码publicpartialclassFormMessageBox:Office2007Form{publicDialogResultUserChoice{get;privateset;}public......
  • MapReduce运行模式
    1、yarn集群运行先将之前写好的MapReduce程序进行打包--Maven-->package;打包完成之后的jar包在target目录下可以找到!!!之后将jar包上传到我们的虚拟机文件夹里面去;之后输入命令:hadoopjarjar包名称jar包主类的全路径名称回车之后开始运行;在hdfs的浏览器界面(9870)能够找到......
  • Linux运维学习笔记
    此笔记为学习https://www.bilibili.com/video/BV1nW411L7xm/?vd_source=3f851e85e66ef33269a2eefee664cec2的学习记录,目前持续更新中,希望能找到运维的实习吖 O(≧▽≦)OLinux的终端终端组成部分Linux关机命令shoutdown-hnow(正常关机)halt(关闭内存)init0使用VMware备......
  • MapReduce学习二之WordCount案例
    一、案例概述1、第一步--变成偏移量的K1,V1(这一步不需要我们自己写)2、进入Map阶段输出新的<K2,V2>的键值对;3、Shuffle阶段分区、排序、规约、分组输出新的键值对:4、Reduce阶段转换为<K3,V3>的新的形式的键值对;利用TextOutputFormat的类实现结果的输出;二、具体实践1......
  • R语言学习1
    R也是一种为统计计算和绘图而生的语言和环境,它是一套开源的数据分析解决方案,1免费:多数商业统计软件价格不菲,投入成千上万美元都是可能的。而R是免费的!如果你是一位教师或一名学生,好处显而易见。2R是一个全面的统计研究平台,提供了各式各样的数据分析技术。几乎任何类型的数据......
  • MySQL学习(3)B+树索引是如何快速查询的
    前言我们已经知道在磁盘中,有很多索引页,这些页并非在物理结构上相连接,而是通过双向链表关联。如果要查找一条数据,需要通过页目录中的槽,通过二分法定位到分组再进行遍历查找。比如下面这样:SELECT[查询列表]FROM表名WHERE条件; 假设表中只有一个页,在查找记录时,可以根据搜......
  • Flink学习记录
    Flink学习记录1简介1.1梗概ApacheFlink是一个框架和分布式处理引擎,用于对无界和有界数据流进行状态计算。对比Spark来说,FLink是真正的流式计算框架,而不是像Spark的微批处理1.2工程搭建<properties><flink.version>1.13.0</flink.version><slf4j.vers......
  • 2023-2024-1 20231314许城铭 《计算机基础与程序设计》第一周学习总结
    2023-2024-120231314许城铭《计算机基础与程序设计》第一周学习总结作业信息这个作业属于哪个课程(2022-2023-1-计算机基础与程序设计)这个作业要求在哪里(2022-2023-1计算机基础与程序设计第一周作业)这个作业的目标<简单浏览《计算机科学概论》,并尝试提出问题以......
  • 学习JVM---入门
    1.JVM体系结构JVM的位置JVM体系结构2.类加载器双亲委派机制packagejava.lang;/***测试自定义java.lang.String类能否运行成功*体会双亲委派机制**类加载器逐级向上检查:app->ext->boot*发现boot类加载器中也有String类,但是没有main方法,于是报错*app:应......
  • Linux相关学习(vmware安装)
    Linux系统一切皆文件(模板机:1.配置IP地址;2.关闭防火墙、selinux安全加载机制)一、配置IP地址cd/etc/sysconfig/network-scripts/lsifcfg-eth0文件解析(网卡配置文件):if:interface接口cfg:config配置eth:ethernet以太网0:第一块网卡viifcfg-eth0按“i”转换为输入模......