flink-13 Flink之Counter(计数器/累加器)

本文介绍了Flink中的Accumulator和Counter概念,它们用于观察task运行时的数据变化。Counter作为Accumulator的一种实现,包括IntCounter、LongCounter和DoubleCounter。文中提供了一个示例,演示如何利用Counter统计文件中'Exception'关键字出现的次数,该统计结果需在任务完成后查看。
摘要由CSDN通过智能技术生成

Flink之Counter

概念

Accumulator即累加器,与Mapreduce counter的应用场景差不多,都能很好地观察task在运行期间的数据变化,可以在Flink job任务中的算子函数中操作累加器,但是只能在任务执行结束之后才能获得累加器的最终结果。
Counter是一个具体的累加器(Accumulator)实现IntCounter, LongCounter 和 DoubleCounter

用法

1.创建累加器
private IntCounter numLines = new IntCounter(); 

2.注册累加器
getRuntimeContext().addAccumulator("num-lines", this.numLines);

3.使用累加器
this.numLines.add(1); 

4.获取累加器的结果
myJobExecutionResult.getAccumulatorResult("num-lines")

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值