MapReduce与Yarn
MapReduce
Map: 分散
Reduce: 聚合、汇总
Yarn
MapReduce是基于Yarn运行的。Yarn在框架中负责资源调度,服务器集群资源的统一管理。
ResourceManager:整个集群的资源调度者, 负责协调调度各个程序所需的资源。
NodeManager:单个服务器的资源调度者,负责调度单个服务器上的资源提供给应用程序使用。
Yarn对资源的分配基于容器。
- 容器(Container)是YARN的NodeManager在所属服务器上分配资源的手段
- 创建一个资源容器,即由NodeManager占用这部分资源
- 应用程序运行在NodeManager创建的这个容器内
- 应用程序无法突破容器的资源限制
Yarn辅助架构
- 代理服务器(ProxyServer):Web Application Proxy Web应用程序代理
最大限度保障对YARN的WEB UI的访问是安全的,运行在ResourceManager中 - 历史服务器(JobHistoryServer): 应用程序历史信息记录服务
记录历史运行的程序的信息以及产生的日志并提供WEB UI站点供用户使用浏览器查看