map:映射; reduce:规约
MR on Yarn架构
== Yarn的架构 == mapreduce job执行流程
MapReduce的流程(面试):
- 用户向yarn提交应用程序(job),包括applicationMaster程序、启动applicationMaster命令等;
- RM为该job分配第一个容器,并与对应的nm通信,要求它在这个容器中去启动job的applicationMaster程序;
- applicationMaster首先向Applications Manager 注册,用户就可以直接在web界面查看job的整个运行状态和日志;
- applicationMaster向Resource Scheduler,采用轮询的方式通过rpc协议去申请和领取资源列表;
- 一旦applicationMaster申请到资源后,便与对应的NM节点通信,便于启动任务;
- NM为任务task设置好运行环境(环境变量,jar包等),将任务的启动命令写在一个脚本文件中,并通过脚本启动任务;
- 各个Task通过IPC向applicationMaster汇报自己的状态和进度,以让applicationMaster随时掌握各个任务的运行状态,从而可以在任务运行时重新启动任务。则web界面可以随时查看job当前的运行状态;
- applicationMaster向Applications Manager汇报状态:finish 或者 success。注销并关闭自己。
2个阶段:1)启动applicationMaster; 2)由applicationMaster创建job,为它申请资源并监控它的整个运行过程,直到运行完成

Yarn:
job app application 作业 应用程序 --》都是一个东西
- ResourceManager 资源作业管理者
Applications Manager 作业管理者
Resource Scheduler 资源调度
2. NodeManager 节点者
shuffle

MR on Yarn架构详细解析,包括MapReduce的工作流程。用户提交job后,Yarn的ResourceManager分配容器启动ApplicationMaster。ApplicationMaster注册并申请资源,NodeManager为任务设置环境并启动。任务通过IPC报告状态,ApplicationMaster监控直至完成。Yarn中的关键角色包括ResourceManager、Applications Manager、Resource Scheduler和NodeManager。
518

被折叠的 条评论
为什么被折叠?



