Map Reduce保持输入顺序

nik*_*sdi 5 hadoop mapreduce

我试图使用hadoop实现一个处理文本文件的应用程序,问题是我无法保持输入文本的顺序,是否有任何方法可以选择哈希函数?通过分配输入的分区可以轻松解决此问题到每个映射器,然后将分区发送给reducer.hadoop是否可能?

Nie*_*jes 2

MapReduce 的基本思想是事情完成的顺序是无关紧要的。因此,您无法(也不需要)控制以下顺序:

  • 输入记录通过映射器。
  • 键和相关值通过减速器。

您唯一可以控制的是值放置在减速器中可用的迭代器中的顺序。这是使用称为“二级排序”的构造来完成的。

对这个术语进行简单的谷歌操作会得到几个可以继续的点。我喜欢这篇博文:链接