- 浏览: 187918 次
文章分类
最新评论
public static class mapper extends Mapper<Text, BytesWritable, Text , Text>{ private Counter c ; @Override protected void setup(Context context) throws IOException, InterruptedException { c = context.getCounter("FILE", "COUNT"); } @Override protected void map(Text key, BytesWritable value, Context context) throws IOException, InterruptedException { c.increment(1); context.write(key, new Text(value.getBytes())); } @Override protected void cleanup(Context context) throws IOException, InterruptedException { } } public static class reducer extends Reducer<Text, Text, Text, Text>{ @Override protected void reduce(Text arg0, Iterable<Text> arg1, Context context) throws IOException, InterruptedException { Iterator<Text> itr = arg1.iterator(); while(itr.hasNext()){ itr.next(); } context.write(arg0, new Text("heihei")); } } public static void main(String[] args) throws IOException, InterruptedException, ClassNotFoundException{ Configuration conf = new Configuration(); Job job = new Job(conf); job.setJarByClass(testCounter.class); FileInputFormat.addInputPath(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); job.setMapperClass(mapper.class); job.setReducerClass(reducer.class); job.setInputFormatClass(WholeFileInputFormat.class); job.setOutputFormatClass(TextOutputFormat.class); job.setMapOutputKeyClass(Text.class); job.setMapOutputValueClass(Text.class); job.setOutputKeyClass(Text.class); job.setOutputValueClass(Text.class); job.waitForCompletion(true); String num = job.getCounters().findCounter("Map-Reduce Framework", "Map input records").getName(); System.out.println(num); }
获取计数器只能在job完成之后,也就是job.waitForCompletion(true);之后,放在之前的话回报一个非法安全的错误,但是在reducer函数里面,则不错报错,也不能获取计数器值,可能设计人员没有扑捉reducer里面的异常吧...
计数器有自定义计数器和内置计数器
静态计数器和动态计数器,前者用枚举,更安全一些,后者直接用字符串,有时为了显示方便,会创建一个properties属性文件。
发表评论
-
多表join的一个优化思路
2012-11-20 11:24 1419big table:streamed small table: ... -
好的网站
2012-09-20 22:17 7491. http://www.cnblogs.com/luche ... -
Hadoop 任务流程
2012-09-07 16:18 786简单的来说分为四个阶段:InputFormat/MapTask ... -
Hadoop关于最大map reducer数目
2012-08-14 20:53 929mapred-site.xml文件: <prop ... -
java.io.IOException:Typemismatch in key from map:expected org.apache.hadoop.io
2012-08-14 20:53 1422解决办法: jo ... -
HDFS 输入文件避免切分
2012-08-14 20:52 1088自定义InputFormat的子类,并把重载方法 ... -
Hadoop 开启debug信息
2012-08-14 20:51 3959运行hadoop程序时,有时候你会使用一些System. ... -
Hadoop 关于0.95/1.75 * (number of nodes)误解
2012-08-14 20:51 944reduce任务槽,即集群能够同时运行的redu ... -
MapReduce ReadingList
2012-08-09 12:22 6681. http://www.aicit.org/jcit/gl ... -
"hadoop fs 和hadoop dfs的区别"
2012-05-30 15:27 1880粗略的讲,fs是个比较抽象的层面,在分布式环境中,fs就是df ... -
Hadoop 自动清除日志
2012-05-29 18:02 897hadoop集群跑了很多的任务后 在hadoop.log ... -
DistributedCache FileNotFoundException
2012-05-26 18:02 945此时注意两种文件路径表示形式,一个在HDFS中。一一个是本地文 ... -
Cygwin 不支持native lib 不支持使用native lib 提供的压缩
2012-05-25 13:33 1109弄了一个上午hadoop的压缩,一直报错NullPointer ... -
Hadoop 在Window下搭建 守护进程启动问题
2012-05-23 15:27 782hadoop version “0.20.2” java ... -
Cygwin ssh Connection closed by ::1
2012-05-17 21:09 1109在Win7下Cygwin中,使用sshlocalhost命令, ... -
Eclipse:Run on Hadoop 没有反应
2012-05-10 20:11 850hadoop-0.20.2下自带的eclise插件没有用,需要 ... -
Hadoop SequcenceFile 处理多个小文件
2012-04-29 11:04 3839利用sequenceFile打包多个小文件,MapFile是s ... -
MapReduce : 新版API 自定义InputFormat 把整个文件作为一条记录处理
2012-04-10 21:47 2264自定义InputFormat 新版API 把真个文件当成 ... -
MapReduce : Combiner的使用(以平均数为例) 并结合in-mapper design pattern 实例
2012-04-10 18:51 4294没有使用Combiner 和 in-mapper des ... -
Hadoop NameNode backup
2012-03-24 18:12 822NameNode: <property> ...
相关推荐
Hadoop 自定义 Partitioner 实现
hadoop实现计数器,利用mapreduce进行排序,同时可以实时跟踪整个过程以及每个节点的参与情况
Hadoop 自定义 Partitioner 实现
hadoop自定义类型编程
Hadoop 自定义 Partitioner 源代码
今天小编就为大家分享一篇关于Hadoop计数器的应用以及数据清洗,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
博客Hadoop机架感知配置自主实现的jar包 http://blog.csdn.net/lemonZhaoTao/article/details/70991813
java map源码
在windows环境下开发hadoop时,需要配置HADOOP_HOME环境变量,变量值D:\hadoop-common-2.7.3-bin-master,并在Path追加%HADOOP_HOME%\bin,有可能出现如下错误: org.apache.hadoop.io.nativeio.NativeIO$Windows....
本文针对MapReduce中的包括计数器、排序和数据集连接进行讲解。计数器包括系统计数器和自定义计数器,排序包括部分排序和文件排序,还包括对键内数据的排序。
04-hadoop的自定义排序实现.avi 05-mr程序中自定义分组的实现.avi 06-shuffle机制.avi 07-mr程序的组件全貌.avi 08-textinputformat对切片规划的源码分析.avi 09-倒排索引的mr实现.avi 10-多个job在同一个...
可以自定义安装jdk和hadoop(格式为*tar.gz) 注意事项 1、安装完jdk和hadoop请手动source /etc/profile 刷新环境变量 2测试脚本环境为centOS6,其他操作系统会有些配置不一样,请手动调整 资源描述: 安装Linux教程...
《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf《Hadoop大数据开发实战》教学教案—01初识Hadoop.pdf...
45_hadoop2.x_温度排序,分区,分组,自定义封装类02 46_hadoop2.x_温度排序,分区,分组,自定义封装类03 47_hadoop2.x_温度排序,分区,分组,自定义封装类04 48_hadoop2.x_温度排序,分区,分组,自定义封装类05 ...
Hadoop 是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由 Yahoo 的工程师 Doug Cutting 和 Mike Cafarella Hadoop 是一个处理、存储和分析海量的分布式、非结构化数据的开源框架。最初由 Yahoo...
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进 Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可以在不...
本书从hadoop的缘起开始,由浅入深,结合理论和实践,全方位地介绍hado叩这一高性能处理海量数据集的理想工具。全书共14章,3个附录,涉及的主题包括:haddoop简介:mapreduce简介:hadoop分布式文件系统;hadoop的i...
hadoop-annotations-3.1.1.jar hadoop-common-3.1.1.jar hadoop-mapreduce-client-core-3.1.1.jar hadoop-yarn-api-3.1.1.jar hadoop-auth-3.1.1.jar hadoop-hdfs-3.1.1.jar hadoop-mapreduce-client-hs-3.1.1.jar ...
用户自定义函数 过滤UDF 计算UDF 加载UDF 数据处理操作 加载和存储数据 过滤数据 分组与连接数据 对数据进行排序 组合和分割数据 Pig实战 并行处理 参数代换 第12章 Hive 1.1 安装Hive ...