MapReduce: 计数器(Counter)

一、MapReduce计数器是什么?

  计数器是用来记录job的执行进度和状态的。它的作用可以理解为日志。我们可以在程序的某个位置插入计数器,记录数据或者进度的变化情况。

二、MapReduce计数器能做什么?

  MapReduce 计数器(Counter)为我们提供一个窗口,用于观察 MapReduce Job 运行期的各种细节数据。对MapReduce性能调优很有帮助,MapReduce性能优化的评估大部分都是基于这些 Counter 的数值表现出来的。

三、MapReduce 都有哪些内置计数器?

  MapReduce 自带了许多默认Counter,现在我们来分析这些默认 Counter 的含义,方便大家观察 Job 结果,如输入的字节数、输出的字节数、Map端输入/输出的字节数和条数、Reduce端的输入/输出的字节数和条数等。下面我们只需了解这些内置计数器,知道计数器组名称(groupName)和计数器名称(counterName),以后使用计数器会查找groupName和counterName即可。

1、任务计数器

1)、MapReduce 任务计数器

2)、文件系统计数器

3)、FileInputFormat 计数器

4)、FileOutputFormat 计数器

2、作业计数器

    作业计数器由 JobTracker(或者 YARN)维护,因此无需在网络间传输数据,这一点与包括 “用户定义的计数器” 在内的其它计数器不同。这些计数器都是作业级别的统计量,其值不会随着任务运行而改变。 作业计数器计数器的 groupName为org.apache.hadoop.mapreduce.JobCounter,

四、计数器的该如何使用?

下面我们来介绍如何使用计数器。

1、定义计数器

1)枚举声明计数器

2)自定义计数器

2、为计数器赋值

 1)初始化计数器

 2)计数器自增

3、获取计数器的值

1) 获取枚举计数器的值

2) 获取自定义计数器的值

3) 获取内置计数器的值

4) 获取所有计数器的值

五、自定义计数器

  自定义计数器用的比较广泛,特别是统计无效数据条数的时候,我们就会用到计数器来记录错误日志的条数。

详见原文:https://www.cnblogs.com/codeOfLife/p/5521356.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值