2013-12-13 24 views

回答

1

這就是它如何實現分組。當按鍵排序時,它們被分組在一起。它的分類真的沒關係......它只是重要的是相等的鍵是彼此相鄰的。

有可能排序不是最好的方法。也許某種散列會更快:O(N)而不是O(NlogN)。它是作爲排序實現的,因爲有一些應用程序想要排序的鍵(例如HBase/BigTable)。

最近可以使用可插拔排序,並且可以在測試版中使用。我還沒有機會嘗試它。 http://hadoop.apache.org/docs/stable/hadoop-mapreduce-client/hadoop-mapreduce-client-core/PluggableShuffleAndPluggableSort.html

1

根據Google's Paper on MapReduce

我們保證一個給定的分區中,中間鍵/值對以遞增鍵順序進行處理。這種排序保證可以很容易地爲每個分區生成一個排序的輸出文件,當輸出文件格式需要支持通過密鑰進行有效的隨機訪問查找時,或輸出的用戶發現排序數據方便時,這非常有用。

Hadoop已經基於谷歌的論文實施。並非所有算法都需要對數據進行排序。排序已經可以在Hadoop中插入,並且可以使用替代項。更多信息here