用於演示MapReduce功能的主要示例之一是Terasort benchmark。我無法理解MapReduce環境中使用的排序算法的基礎知識。MapReduce排序算法如何工作?
對我來說,排序只需要確定一個元素與所有其他元素的相對位置。所以排序包括比較「一切」和「一切」。您的平均排序算法(快速,氣泡,...)只是以一種明智的方式做到這一點。
在我看來,將數據集分成多個部分意味着您可以對單個部分進行排序,然後您仍然必須將這些部分整合到'完整'完全排序的數據集中。鑑於分佈在數千個系統上的terabyte數據集,我預計這將是一項艱鉅的任務。
那麼這是如何做到的?這個MapReduce排序算法是如何工作的?
謝謝你幫助我理解。
我瞭解(大部分)MapReduce的概念,如上述文檔中所述。我試圖理解排序算法。 – 2009-07-20 10:52:32