用于演示 MapReduce 强大功能的主要示例之一是 Terasort benchmark。我很难理解 MapReduce 环境中使用的排序算法的基本原理。
对我来说,排序只是确定一个元素与所有其他元素之间的相对位置。因此,排序涉及到将“一切”与“一切”进行比较。你的平均排序算法(快速、泡沫、 ... ...)只是用一种聪明的方式做到了这一点。
In my mind splitting the dataset into many pieces means you can sort a single piece and then you still have to integrate these pieces into the 'complete' fully sorted dataset. Given the terabyte dataset distributed over thousands of systems I expect this to be a huge task.
那么,这到底是如何实现的呢? MapReduce 排序算法是如何工作的呢?
Thanks for helping me understand.