地图功能hadoop中的共享计数器

时间:2019-01-28 11:55:35

标签: java hadoop mapreduce

我需要从我的映射器中共享一个计数器。这可能吗?如果可以,怎么办?

public class CounterMapper extends Mapper<Text,Text,Text,Text> {

@Override
protected void map(Text key, Text value, Context context)
                throws IOException, InterruptedException {

    String splittedkey = //some logic ok key

    if(context.getCounter("my_counters", splittedkey).getValue() == 0 )
       context.getCounter("my_counters", splittedkey).increment(1);
    context.write(key, value);
    }
}

在我的驱动程序中,我有一个用startRowStopRow进行简化的映射的列表,有时此扫描的结果是相同的,因此我需要跳转到map函数内, 但是my_counters的值始终为零。 有什么建议吗?

0 个答案:

没有答案