计数器使用比较简单,比如统计文本文件中某个字符的个数,只需在map函数中执行。
public void map(LongWritable key, Text value, Context context) throws IOException, InterruptedException {
String[] s=value.toString().split(" ");
for(String ss:s) {
if(ss.equals("hello")) {
//由context得到计数器对象,getCounter方法中第一个参数为计数器组名称,第二个参数为计数器名称
counter=context.getCounter("gjcounter","he");
counter.increment(1);
}
if(ss.equals("gu")) {
counter=context.getCounter("gjcounter","gj");
counter.increment(1);
}
}
}
得到的结果如下: