12.6 小结

本章介绍了下一代MapReduce的基本设计思想以及常见的三个实现:YARN、Corona和Mesos。

YARN是Apache的下一代MapReduce框架。它的基本设计思想是将JobTracker拆分成两个独立的服务:一个全局的资源管理器ResourceManager和每个应用程序特有的ApplicationMaster。其中,ResourceManager负责整个系统的资源管理和分配,而ApplicationMaster则负责单个应用程序的管理。

与YARN一样,Corona也是将JobTracker拆分成了两个独立的服务:一个全局的资源管理器ClusterManager和每个应用程序特有的CoronaJobTracker。其中,ClusterManager负责整个系统的资源管理和分配,而CoronaJobTracker则负责单个应用程序的管理。

Mesos诞生于UC Berkeley的一个研究项目。它的设计动机是解决编程模型和计算框架在多样化的环境下的框架间资源隔离和共享问题。尽管它不是直接从MRv 1衍化而来的,但它具备了下一代MapReduce的基本特征。

尽管YARN、Corona和Mesos诞生于不同的公司或者研究机构,但它们的架构却大同小异,表12-3给出了它们内部基本组件的对应关系。

12.6 小结 - 图1

随着应用需求的多样化和数据量的增加,下一代MapReduce必将逐渐替代MRv 1,被越来越多的公司采用。