如何对 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];
}
}
请给我解决办法???谢谢:)
最佳答案
您正在迭代 values
中的结果,一旦迭代它们,就无法再次执行此操作。
在值
中提供的总计数不太大,您可以尝试将值设置为本地集合变量,然后您应该能够多次迭代它们。
关于hadoop - 在Reduce 阶段(HADOOP)多次迭代键/值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16141685/