如何通过Hadoop中的Reduce函数中的Iterable迭代两次

时间:2015-09-17 04:41:21

标签: java mapreduce

我有一种情况需要在 Hadoop 地图缩减作业中的Reduce函数的Iterable输入上迭代两次。

现在,我已经知道我不能迭代两次,解决方法是我可以将数据存储在LinkedList等中间集合中。

现在的问题是,当我尝试将值写入LinkedList时,而不是写入当前值,它只是通过整个列表复制值。

例如:LinkedList,位置:1:a(到目前为止工作正常) 现在,当我写第二个值(比如说b)时,它也会将第一个值替换为b。

  

所以代替了     列表,pos:1:a
    列表,pos:2:b

  

写道   列表,pos:1:b
  列表,pos:2:b

任何人都知道为什么会这样?对此有任何解决方案或解决方法吗? (执行不会引发任何错误)

0 个答案:

没有答案