我试图理解为什么map-reduce在map端和reduce端的洗牌和排序阶段进行隐式排序,表现为内存和磁盘排序的混合(对于大量数据来说可能真的很昂贵)。
我担心的是,在运行 map-reduce 作业时,性能是一个重要的考虑因素,在处理大量数据时,在将 mapper 的输出扔给 reducer 之前基于键的隐式排序将对性能产生很大影响。
我知道在某些明确要求排序的情况下,排序可以证明是一种恩惠,但这并不总是正确的?那么,Hadoop Map-Reduce 中为什么存在隐式排序的概念呢?
对于我在提到 shuffle 和 sort 阶段时所谈论的内容的任何类型的参考,请随时简要阅读这篇文章:Map-Reduce: Shuffle and Sort
在我的博客上:Hadoop-Some Salient Understandings