我目前正在处理一个MapReduce作业,我只使用没有减速器的映射器。我不需要将键写出来,因为我只需要存储在数组中的值,并希望将其作为最终输出文件写出来。如何在Hadoop上实现这一点?我只对输出值感兴趣,而不是将键和值都写入输出。值在一个数组中。由于
public void pfor(TestFor pfor,LongWritable key, Text value, Context context, int times) throws IOException, InterruptedException{
int n = 0;
while(n < times){
pfor.pforMap(key,value, context);
n++;
}
for(int i =0;i<uv.length; i++){
LOG.info(uv[i].get() + " Final output");
}
IntArrayWritable edge = new IntArrayWritable();
edge.set(uv);
context.write(new IntWritable(java.lang.Math.abs(randGen.nextInt())), edge);
uv= null;
}
使用NullWritable
作为值,并发出您的"edge"作为键