计数器应用

计数器应用(多线程情况下,无法使用debug调试代码,只能通过计数器的方式来调节

打log和debug是解决问题的重要手段

Hadoop为每个作业维护若干内置计数器,以描述多项指标。例如,某些计数器记录已处理的字节数和记录数,使用户可监控已处理的输入数据量和已产生的输出数据量。

1)API

(1)采用枚举的方式统计计数

enum MyCounter{MALFORORMED,NORMAL}

//对枚举定义的自定义计数器加1

context.getCounter(MyCounter.MALFORORMED).increment(1);

(2)采用计数器组、计数器名称方式统计

context.getCounter("counterGroup", "countera").increment(1);

组名和计数器名称随便起,但最好有意义。

(3)计数结果在程序运行后的控制台上查看。

2)案例实操

详见 日志清洗(数据清洗

private boolean paeseLog(String line, Mapper<LongWritable, Text, Text, NullWritable>.Context context) {
		String[] words=line.split(" ");
		if(words.length>11) {
			context.getCounter("logmap", "parse_true").increment(1);
			return true;
		}else {
			context.getCounter("logmap", "parse_false").increment(1);
			return false;
		}
	}

在控制台查看

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
自1.6版以后,增加了表达式计算的功能,从此可以进行复杂的公式计算,如输入以下公式“2+(18-10)/7^2+sin(1)+sqrt(sqrt(5),3)*2”,按下计算按钮或回车会自动得出最终结果。另外增加了一个“单步求解”的选项,可以一步一步显示出公式的计算过程。支持各种三角函数,运算的结果可选择弧度或角度值,这取决于计算器的角度|弧度按钮选择。打开表达式计算的功能步骤是:鼠标右键单击液晶屏幕,在弹出的菜单中选择“* 表达式(公式)计算 *”一项,即可打开该功能。(注:表达式功能不能在小窗口状态下使用),另外,v1.6版还改进了许多以前版本中不方便或有BUG的地方,使用更加方便!增加了十几种三角函数运算(包括各种双曲正弦、余弦、正割、余割等等以及相关反函数),加入了角度与弧度计算,加入了位移指令,增加了各种常用常数表,使用户在计算一些常用公式时,不必再去翻书查找。加入了各种单位换算,单位换算与屏幕计算结果实时换算,并可实时改变换算单位。并修改了数据转换为"人民币中文大写形式、人民币数字形式(例如:1435.75、人民币壹仟肆佰叁拾伍圆柒角伍分、¥1435.75)的一些BUG,大大方便了财务、票据等方面的工作,输入的任何数据和计算结果可自动输入在其它程序窗口当前光标位置,就像和其它程序融为一体一样。如果用户经常在应用软件中做计算输入工作(例如各种文字处理、制表、工程计算、股票等等一切需要输入计算数据和结果的地方。),那么这个功能将使工作变得非常方便!(如果不需要这项功能,鼠标右键单击液晶屏幕,在弹出的菜单中取消“数据自动输入其它窗口”一项即可!)。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值