1、Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程序则相当于运行于操作系统之上的应用程序。
hdfs用于储存数据,mapreducey负责分析计算,yarn负责资源调度
YARN主要由ResourceManager、NodeManager、ApplicationMaster和Container等组件构成
2、工作机制
1)作业提交
YarnRunner(job.waitForCompletion)向ResourceManager申请一个Application(作业ID)
RM将该应用程序的资源路径(作业ID等)返回给YarnRunner
该程序将运行所需资源(jar包、切片信息、配置文件)提交到HDFS上
程序资源提交完毕后,申请运行MRAppMaster
2)作业初始化