1 作业提交流程
客户端提交MR作业 Yarn的资源管理器Resource Manager 协调集群计算资源的分配 Yarn的节点管理器 NodeManager 启动并监控集群中计算容器 MapReduce中的Application Master 协调MR作业中的任务运行 ApplicationMaster和MR运行在容器中,容器由resourceManager调度 由NodeManager管理 HDFS在组件内共享作业数据 Job对象的submit方法创建了一个内部的JobSubmitter实例并调用该实例的submitJobInternal方法。一旦提交了作业,waitForCompletion方法每秒钟轮询作业的执行进度,如果进度发生了变化,则向控制台报告进度。当作业成功完成,展示作业计数器的数据。否则展示作业失败的错误日志信息。
客服端提交作业的过程 1 先申请一个ApplicationID 给MR用 2 检查输入输出路径 不能没有或者存在 3 计算输入的切片 4 拷贝执行作业需要的资源 (10份)在HDFS上 资源包括(jar包 配置文件 计算好的输入切片)5 调用resourcemanager的submitApplication方法提交作业。
Yarn为请求分配一个容器 resourceManager 通过容器所在节点上的nodemanager在该容器上启动一个applicationMaster进程 applicationMaster从hdfs抽取切片为每一个切片创建一个map任务 以及一定数量的reduce任务对象 applicationMaster会为作业中所有任务向resourceManager请求容器 appmaster从hdfs抽取客户端上传的信息,计算好map对象和reduce对象,首先向resourcemanager为map任务申请资源,当map任务完成5%之后为reduce任务申请资源 一旦resourcemana

本文详细介绍了MapReduce作业的提交流程,包括客户端如何提交作业、Yarn的资源管理和节点管理器如何协调任务运行。在高可用(HA)环境中,重点讲述了配置更改以及Word Count(WC)代码实现。通过分析源码,揭示了作业提交过程中的配置设定和任务执行细节。
最低0.47元/天 解锁文章
1749

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



