我在Apache hama中做一个项目来实现广度优先搜索,并且在分区输入graph时遇到麻烦。任何人都建议一个方法来做同样的事情?
public static class MinIntCombiner extends Combiner<IntWritable> {
@Override
public IntWritable combine(Iterable<IntWritable> messages) {
int visited = Integer.MAX_VALUE;
Iterator<IntWritable> it = messages.iterator();
// int msgValue = it.next().get();
while (it.hasNext()== true) {
int msgValue = it.next().get();
if (visited > msgValue)
visited = msgValue;
// msgValue = it.next().get();
}
return new IntWritable(visited);
}
此处使用的分区是
ssspJob.setPartitioner(HashPartitioner.class);
由于我们不能将Hashpartitioner用于bfs,有人可以建议另一种方法吗?