如何在HADOOP的Reduce阶段中接收的键/值对上多次迭代。我想做类似的事情,但它没有进入第二次迭代。
for (Vector value : values)
{
sum += value.getVector()[length-1];
for (int i = 1; i < length-1; i++)
{
value.getVector()[i]=value.getVector()[i]/value.getVector()[length-1];
mean[i]+=value.getVector()[i];
}
}
for (Vector value : values)
{
for (int i = 1; i < length-1; i++)
{
value.getVector()[i]=value.getVector()[i]/value.getVector()[length-1];
}
}
请给我解决方案??? thnx:)
答案 0 :(得分:2)
你正在迭代values
中的结果,一旦你迭代了它们就不能再做了。
在values
中提供总计数不是太大,您可以尝试将值设置为本地集合变量,然后您应该能够多次迭代它们。