Combiner合并

(1)Combiner是MR程序中Mapper和Reducer之外的一种组件。
(2)Combiner组件的父类就是Redulcer。
(3 )Combiner和Reducer的区别在于运行的位置
Combimner是在每一个MapTask所在的节点运行;
Reducer是接收全局所有Mapper的输出结果;
(4)Combiner的意义就是对每一个MapTask的输出进行局部汇总,以咸小网络传输量。
(5)Combiner能够应用的前提是不能影响最终的业务逻辑,而且,Combiner的输出kv
应该跟Reducei的输入kv类型要对应起来。
Mapper
Reducer
357->(3+5+7)/3=5
(3+5+7+2+6)/5=23/5不等于(5+4)/2=9/2
26->(2+6)/2=4
天不看孝技

(6)自定义Combiner实现步骤

(a)自定义一个Combiner继承Reducer,重写Reduce方法

public class WordcountCombiner extends Reducer<Text, IntWritable, Text, IntWritable>{       IntWritable v = new IntWritable();       @Override    protected void reduce(Text key, Iterable<IntWritable> values,           Reducer<Text, IntWritable, Text, IntWritable>.Context context) throws IOException, InterruptedException {             int sum = 0;             // 1 汇总操作       for (IntWritable value : values) {           sum += value.get();       }             v.set(sum);             // 2 写出       context.write(key, v);    } }

(b)在Job驱动类中设置:

job.setCombinerClass(WordcountCombiner.class);

大数据培训教程Combiner合并相关推荐

  1. Java大数据培训学校全套教程-AJAX(27)-马克-专题视频课程

    Java大数据培训学校全套教程-AJAX(27)-2人已学习 课程介绍         Java大数据培训学校视频教程:"java大数据培训学校全套教材"系列课程由750集视频构成 ...

  2. 2018大数据培训学习路线图(详细完整版)

    2018大数据培训学习路线全课程目录+学习线路详解(详细完整版) 第一阶段:大数据基础Java语言基础阶段 1.1:Java开发介绍 1.1.1 Java的发展历史 1.1.2 Java的应用领域 1 ...

  3. 大数据培训:Hadoop HDFS 实现原理

    一.HDFS体系结构 1.1 HDFS 简介 Hadoop分布式文件系统 (HDFS) 是运行在通用硬件(commodity hardware)上的分布式文件系统(Distributed File S ...

  4. 大数据培训ClickHouse表引擎

    表引擎 表引擎(即表的类型)决定了: 1)数据的存储方式和位置,写到哪里以及从哪里读取数据 2)支持哪些查询以及如何支持. 3)并发数据访问. 4)索引的使用(如果存在). 5)是否可以执行多线程请求 ...

  5. 大数据课程培训大纲详解,大数据培训学习内容

    大数据助力成就非凡.大数据正在改变着商业游戏规则,为企业解决传统业务问题带来变革的机遇.毫无疑问,当未来企业尝试分析现有海量信息以推动业务价值增值时,必定会采用大数据技术.那么大数据培训哪家好呢?今天 ...

  6. 大数据培训:Spark性能调优与参数配置

    Spark性能调优-基础篇 众所周知,正确的参数配置对提升Spark的使用效率具有极大助力,帮助相关数据开发.分析人员更高效地使用Spark进行离线批处理和SQL报表分析等作业. 推荐参数配置模板如下 ...

  7. 大数据培训:Spark 性能调优详解

    调优概述 有的时候,我们可能会遇到大数据计算中一个最棘手的问题--数据倾斜,此时Spark作业的性能会比期望差很多.数据倾斜调优,就是使用各种技术方案解决不同类型的数据倾斜问题,以保证Spark作业的 ...

  8. 深圳大数据培训:HDFS基本概念

    深圳大数据培训:HDFS基本概念 1.1 HDFS的介绍 源自于Google的GFS论文 发表于2003年10月 HDFS是GFS克隆版 ,HDFS的全称是Hadoop Distributed Fil ...

  9. 深圳大数据培训:Transformation算子演示

    深圳大数据培训:Transformation算子演示 val conf = new SparkConf().setAppName("Test").setMaster("l ...

最新文章

  1. JDBC 学习(一)
  2. Bitcoin Unlimited发布BCH新版本,石墨烯技术迎来进展
  3. select选择框实现跳转
  4. 为什么按照 Angular 官网教程执行简单的测试代码,会遇到expect is not defined的错误消息
  5. 北邮王立新教授提到的“5年后运营商排名论”
  6. Windows半透明窗口开发技巧
  7. Neutorn LBaaS 原理
  8. Java中对象和引用的理解
  9. [buaa-SE-2017]个人作业-Week1
  10. python数据分析师网易城市数据团_城市数据分析师-网易云课堂 - 网易云课堂
  11. python保存快捷键是什么_python常用快捷键
  12. 密码学写作论文排版操作手册,latex模板cryptocode
  13. 推荐一款插件layim.js 阿里大牛贤心制作的一款webim聊天插件
  14. 从阿里巴巴icon引入图标到微信小程序(可以改变大小,颜色)
  15. Macos中的Mercurial GUI工具Murky试用
  16. Memory cgroup out of memory
  17. uniapp 热更新和整包更新
  18. 尚硅谷大数据技术之Kettle
  19. Kotlin 标准库随处可见的 contract 到底是什么?
  20. Golang调度器GPM原理与调度全分析

热门文章

  1. 联咏平台wifi吞吐量测试方法
  2. 内网映射代理方案(内网穿透)
  3. 网易云信亮相 GIAC 全球互联网架构大会,解密新一代音视频架构在元宇宙场景的实践...
  4. 微信公众号开发快速获取openID(小妙招)
  5. springboot康复中心病员健康饮食管理系统
  6. 纯js实现京东购物鼠标放大案例
  7. 【自己制作数据集】制作标注并生成mask
  8. matlab随机矩阵求最大值,产生一个5*7的随机矩阵,编程求出其最小值和最大值及其所处的位置....
  9. 比特元BTY简介:老牌加密数字货币,3.0主网成功,新篇章开启!
  10. 巴比特 | 元宇宙每日必读:央视网旗下平台2款藏品卖出51万元,支持30天后转赠,投资者称期待看到赋能...