zoukankan      html  css  js  c++  java
  • Hadoop_29_MapReduce_计数器应用

      在实际生产代码中,常常需要将数据处理过程中遇到的不合规数据行进行全局计数,类似这种需求可以借助mapreduce框架中

    提供的全局计数器来实现

    示例代码如下:

    public class MultiOutputs {
        //通过枚举形式定义自定义计数器
        enum MyCounter{MALFORORMED,NORMAL}
    
        static class CommaMapper extends Mapper<LongWritable, Text, Text, LongWritable> {
    
            @Override
            protected void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
    
                String[] words = value.toString().split(",");
    
                for (String word : words) {
                    context.write(new Text(word), new LongWritable(1));
                }
                //对枚举定义的自定义计数器加1
                context.getCounter(MyCounter.MALFORORMED).increment(1);
                //通过动态设置自定义计数器加1,通常使用该种就可以
                context.getCounter("counterGroupa", "countera").increment(1);
            }
        }
  • 相关阅读:
    特性(Attribute)
    泛型
    AngularJS 基础用法
    js date相关学习!
    android 数据存储分配的一些事
    angularjs model.service vs provider vs factory?
    angularJS 判断
    zepto.js 学习之(一)
    angularJS Directive学习
    AngularJS继续中
  • 原文地址:https://www.cnblogs.com/yaboya/p/9266380.html
Copyright © 2011-2022 走看看