MapReduce既是编程模型又是计算框架!

MapReduce既是一个编程模型,又是一个计算框架。

也就是说,开发人员必须基于MapReduce编程模型进行编程开发。

  • 然后将程序通过MapReduce计算框架分发到Hadoop集群中运行。

MapReduce编程模型的主要计算过程和原理

一个Map函数可以针对一部分数据进行运算。

这样就可以将一个大数据切分成很多块(这也正是HDFS所做的)。

  • MapReduce计算框架为每个数据块分配一个Map函数去计算,从而实现大数据的分布式计算。

假设有两个数据块的文本数据需要进行词频统计,MapReduce计算过程如下图所示。

image-20240801111319729

这样一个MapReduce程序要想在分布式环境中执行,并处理海量的大规模数据,还需要一个计算框架。

能够调度执行这个MapReduce程序,使它在分布式的集群中并行运行。

  • 而这个计算框架也叫MapReduce。