我运行了一个hadoop作业并在reduce阶段设置了多个reducer,然后我定制了一个计数器来对多个reducer的结果求和。但是,每个reducer中结果的数据类型是double,而conuter的增量方法只支持long数据类型。如果强制从double转换为long,则精度将丢失。我怎样才能解决这个问题?
double f=F_Score(cid,map);
System.out.println("f= "+f);
if(flag==0){
context.getCounter(Counter.F_Score_XY).increment(Math.round(f));
}else {
context.getCounter(Counter.F_Score_YX).increment(Math.round(f));
}
暂无答案!
目前还没有任何答案,快来回答吧!