Mapreduce&yarn工作机制

本文详细介绍了MapReduce的工作机制,包括程序提交后的运行流程、资源管理器如何调度任务、节点管理器的任务领取流程以及应用程序主控如何申请运行Map任务等关键环节。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

相关文章:

《mapreduce切片机制》

Mapreduce&yarn工作机制:

Mapreduce程序运行过程是这样的:程序通过job.submit()提交后,通过YARNRunner中动态代理(proxy)远程调用,跟yarn resourcemanager通信,获得一个资源提交路径和jobid,然后客户端mapreduce程序通过HDFS获得文件的信息(文件大小),根据文件大小和用户设置的minsizemaxsize参数,对文件进行切片规划,并最终形成job.split文件提交到提交路径上去,此外还会将程序运行的jar包和job参数形成job.xml提交到提交路径上。最后向resourcemanager发送提交完毕的信息,并且申请运行appmaster


Resourcemanager将用户的请求初始化成一个task,放到调度队列里面。Nodemanager按一定心跳频率,访问队列查看是否有自己的任务,其实这里也是RPC调用,通过调用返回的值,来确定有没有自己的任务,有就领取任务。


nodamanager根据任务参数,构造出具体cpu和内存的container,用来运行appmaster,同时将提交路径上的job.xml\job.split\....jar,下载到本地,appmaster根据切片信息,判断出每个切片所在的datanode,然后再向resourcemanager申请运行maskTaskresourcemanager将他加入到调度队列中,等待nodemanager来领取任务。剩下的过程和前面类似。

具体mapreduce运行流程请看:

《Mapreduce运行全流程》

注:他们之间的通信时通过RPC调用实现的。

 

最后配张流程图:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值