Yarn是hadoop的三大组件之一,是资源调度器,负责资源调度和资源的分配。具体原理如下图:
客户端向resource Manager发送资源请求。
RM接收到请求之后,会在某一台机器上创建Application Master ,并建立心跳机制进行反向注册,并合计自己需要多少cpu和内存,再向RM申请资源。
RM会校验它的权限,并看看资源够不够,都通过了会告诉AM可以,并返回一个nodemaneger列表。
AM会根据列表,去寻找nodemaneger,创建map任务和reduce任务。
在map阶段,先分区,排序,规约,分组。将数据交给reduce的分组,分组之后再聚合,最后将结果进行输出。
任务过程中,要向AppMaster发送心跳,汇报进度。AppMaster向Resource Maneger发送心跳,汇报进度。Resource Maneger向客户端发送进度。
当所有任务完成之后,把资源统统释放掉。
标签:reduce,原理图,Yarn,发送,分组,心跳,RM,资源 From: https://blog.csdn.net/weixin_58468790/article/details/142103402