有谁知道如何在输出文件中写入一行中相同键的值列表? 例如,我有这个:(键,值) 0 [0,2,4,5], 1 [1,2,3] 我想要输出:
0 0 2 4 5
1 1 2 3
而不是
0 0
0 2
0 4
...等
答案 0 :(得分:3)
只需将reducer中的所有值连接到一个字符串,然后将值写为Text
。例如
public void reduce(IntWritable key, Iterable<IntWritable> values, Context context) ... {
StringBuilder sb = new StringBuilder();
for (IntWritable value : values) {
sb.append(String.valueOf(value.get()) + " ");
}
context.write(key, new Text(sb.toString()));
}