概述
MapReduce 是 Hadoop 项目中的分布式计算框架,源自 Google 2004 年发表的同名论文。它降低了分布式计算的门槛,可以让用户轻松编写程序,让其以可靠、容错的方式运行在大型集群上并行处理海量数据(TB 级)。
MapReduce 的两大核心设计思路:
- 分而治之,并行计算:将大规模数据切分为若干子集,多个节点并行处理
- 移动计算,而非移动数据:将计算程序调度到数据所在节点,避免大量数据在网络中传输
MapReduce 框架仅对 <key, value> 对进行操作,将作业的输入视为一组 <k1, v1> 对,经过 Map、Shuffle、Reduce 处理后,生成 <k3, v3> 对作为输出:
2020/6/22大约 9 分钟
