作者:幻好
来源:恒生LIGHT云社区
基本概念
MapReduce 是一个分布式运算程序的编程框架,通过它能将用户将编写好的程序提交,并发运行在一个 Hadoop
集群上。
MapReduce 核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序。
MapReduce 是一个编程模型,分为两个阶段:Map 和 Reduce。输入的数据会先分块,然后由 Map 进行处理,最后输出到 Reduce 中。
可以将它理解成对数据整理,然后归纳的一个过程。
核心算法
MapReduce 的算法计划通常分三个步骤组成:
Map
:映射或映射器的工作是处理输入数据。每个工作节点将map
函数应用于本地数据,并将输出写入临时存储。Shuffle
:工作节点根据输出键重新分配数据,对数据映射排序、分组、拷贝,目的