有点奇怪的问题,但是有人知道MapReduce在shuffle/sort的排序部分使用哪种排序吗?我认为合并或插入(与整个MapReduce范式保持一致),但我不确定。
这是快速排序,然后排序的中间输出合并在一起。快速排序检查递归深度,当它太深时就放弃。如果是这种情况,则使用堆排序。
看一下快速排序类:
org.apache.hadoop.util.QuickSort
您可以通过hadoop-default.xml中的map.sort.class值更改使用的算法。