3分钟
MapReduce主要解决的问题
MapReduce致力于解决大规模数据处理问题。因此MapReduce在设计之初就考虑了数据的局部性原理,利用局部性原理将整个问题分而治之。在处理之前已经将数据集分布到各个节点上了,处理时,每个节点先就近读取本地存储的数据。这里介绍Map处理,将Map处理后的数据进行合并combine、排序(shuffle and sort)后再分发到Reduce节点。在数据传输过程中,为了避免大量的数据传输,提高数据传输效率,采用无共享式架构,好处是配合复制(replication)策略,为集群带来良好的容错能力,一部分节点死机时对集群的正常工作不会造成太大的影响。
学员评价