文档章节

Hadoop 2.5.1学习笔记3:关于Combiner

强子1985
 强子1985
发布于 2014/11/07 16:05
字数 473
阅读 72
收藏 1

如果把前面的例子加上Combiner.class

public static class Combiner extends Reducer<Text, Text, Text, Text> {
  public void reduce(Text key, Iterable<Text> values, Context context)
    throws IOException, InterruptedException {
   long  count = 0;
   for (Text val : values) {
    count+=Long.parseLong(val.toString());
   }
   context.write(key, new Text(""+count));
  }

 }

 

然后指定 job.setCombinerClass(Combiner.class);

可以观察下两个的效率区别:

4/11/07 14:49:25 INFO mapreduce.Job: Counters: 38
 File System Counters
  FILE: Number of bytes read=52642504
  FILE: Number of bytes written=95200714
  FILE: Number of read operations=0
  FILE: Number of large read operations=0
  FILE: Number of write operations=0
  HDFS: Number of bytes read=608036374
  HDFS: Number of bytes written=423
  HDFS: Number of read operations=22
  HDFS: Number of large read operations=0
  HDFS: Number of write operations=5
 Map-Reduce Framework
  Map input records=2923923
  Map output records=2923923
  Map output bytes=20467464
  Map output materialized bytes=26315322
  Input split bytes=212
  Combine input records=0
  Combine output records=0
  Reduce input groups=38
  Reduce shuffle bytes=26315322
  Reduce input records=2923923
  Reduce output records=38
  Spilled Records=5847846
  Shuffled Maps =2
  Failed Shuffles=0
  Merged Map outputs=2
  GC time elapsed (ms)=252
  CPU time spent (ms)=0
  Physical memory (bytes) snapshot=0
  Virtual memory (bytes) snapshot=0
  Total committed heap usage (bytes)=1150484480
 Shuffle Errors
  BAD_ID=0
  CONNECTION=0
  IO_ERROR=0
  WRONG_LENGTH=0
  WRONG_MAP=0
  WRONG_REDUCE=0
 File Input Format Counters
  Bytes Read=236907275
 File Output Format Counters
  Bytes Written=423

 

 

使用后的:

14/11/07 16:04:49 INFO mapreduce.Job: Counters: 38
 File System Counters
  FILE: Number of bytes read=16224
  FILE: Number of bytes written=704061
  FILE: Number of read operations=0
  FILE: Number of large read operations=0
  FILE: Number of write operations=0
  HDFS: Number of bytes read=608036374
  HDFS: Number of bytes written=423
  HDFS: Number of read operations=22
  HDFS: Number of large read operations=0
  HDFS: Number of write operations=5
 Map-Reduce Framework
  Map input records=2923923
  Map output records=2923923
  Map output bytes=20467464
  Map output materialized bytes=523
  Input split bytes=212
  Combine input records=2923923
  Combine output records=39
  Reduce input groups=38
  Reduce shuffle bytes=523
  Reduce input records=39
  Reduce output records=38
  Spilled Records=78
  Shuffled Maps =2
  Failed Shuffles=0
  Merged Map outputs=2
  GC time elapsed (ms)=281
  CPU time spent (ms)=0
  Physical memory (bytes) snapshot=0
  Virtual memory (bytes) snapshot=0
  Total committed heap usage (bytes)=1154875392
 Shuffle Errors
  BAD_ID=0
  CONNECTION=0
  IO_ERROR=0
  WRONG_LENGTH=0
  WRONG_MAP=0
  WRONG_REDUCE=0
 File Input Format Counters
  Bytes Read=236907275
 File Output Format Counters
  Bytes Written=423

 

 

第一次耗费 28秒

第二次耗费21秒。

© 著作权归作者所有

共有 人打赏支持
强子1985

强子1985

粉丝 875
博文 1121
码字总数 826942
作品 8
南京
架构师
私信 提问
Hadoop学习笔记(二)设置单节点集群

本文描述如何设置一个单一节点的 Hadoop 安装,以便您可以快速执行简单的操作,使用 Hadoop MapReduce 和 Hadoop 分布式文件系统 (HDFS)。 参考官方文档:Hadoop MapReduce Next Generation ...

微wx笑
2014/10/07
0
0
hadoop 学习笔记:mapreduce框架详解

hadoop 学习笔记:mapreduce框架详解   开始聊mapreduce,mapreduce是hadoop的计算框架,我 学hadoop是从hive开始入手,再到hdfs,当我学习hdfs时候,就感觉到hdfs和mapreduce关系的紧密。...

MR_White
2014/08/28
639
0
零基础学习hadoop到上手工作线路指导(中级篇)

此篇是在零基础学习hadoop到上手工作线路指导(初级篇)的基础,一个继续总结。 五一假期:在写点内容,也算是总结。上面我们会了基本的编程,我们需要对hadoop有一个更深的理解: hadoop分为...

一枚Sir
2014/08/07
85
0
[Hadoop][笔记]4个节点搭建Hadoop2.x HA测试集群

搭建Hadoop2.x HA 1.机器准备 虚拟机 4台 10.211.55.22 node1 10.211.55.23 node2 10.211.55.24 node3 10.211.55.25 node4 2.四台主机节点安排 node namenode datanode zk zkfc jn rm appli......

zemel
2016/08/22
37
0
MR计算框架学习笔记-持续更新

MapReduce分布式计算框架简称MR,比较适合做数据离线计算;其余计算框架如spark 基于内存的迭代式计算,适合做实时计算框架;Storm适合做流计算。 MapReduce 分布式离线计算框架 主要适用于大...

hnairdb
10/02
0
0

没有更多内容

加载失败,请刷新页面

加载更多

iOS分段选择器、旅行App、标度尺、对对碰小游戏、自定义相册等源码

iOS精选源码 企业级开源项目,模仿艺龙旅行App 标签选择器--LeeTagView CSSegmentedControl常用的分段选择器,简单易用! 仿微信左滑删除 IOS左滑返回 输入框 iOS 基于PhotoKit框架的自定义相...

Android爱开源
4分钟前
0
0
浅谈 Java JPDA

本文首发个人公众号《andyqian》,期待你的关注~ 前言 程序员在坊间有非常多有趣的故事,其中就有这么一则:”这个在我的电脑上是好的,没问题的呀,诺,你看咯,一定是你打开姿势不正确,浏...

andyqian
10分钟前
23
1
人工智能可以跳出动感的跳舞视频

非常热门的人工智能技术目前正在快速的发展,与此同时越来越多人工智能应用也开始出现在我们的生活中。 此前有开发者利用谷歌开源免费的卷积神经网络工具,将色情影片中的人物换成明星并达到...

linux-tao
13分钟前
0
0
离线批量数据通道Tunnel的最佳实践及常见问题

基本介绍及应用场景 Tunnel是MaxCompute提供的离线批量数据通道服务,主要提供大批量离线数据上传和下载, 仅提供每次批量大于等于64MB数据的场景,小批量流式数据场景请使用DataHub实时数据...

阿里云云栖社区
13分钟前
0
0
git reset放弃修改&放弃增加文件

1. 本地修改了一堆文件(并没有使用git add到暂存区),想放弃修改。 单个文件/文件夹: $ git checkout -- filename 所有文件/文件夹: $ git checkout . 2. 本地新增了一堆文件(并没有git a...

JamesView
20分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部