Mapredcue作业启动

Mapredcue作业启动

💡 原文中文,约11100字,阅读约需27分钟。
📝

内容提要

作业启动的核心类为Job.java,入口函数为waitForCompletion。作业通过submit()函数提交,连接ResourceManager并上传文件。YARNRunner.java负责处理作业提交,创建上下文信息并发送请求。MRAppMaster.java初始化作业,创建Job对象并发送事件。作业启动后,调度Map和Reduce任务,最终处理作业的提交与完成。

🎯

关键要点

  • 作业启动的核心类为Job.java,入口函数为waitForCompletion。
  • 作业通过submit()函数提交,连接ResourceManager并上传文件。
  • YARNRunner.java负责处理作业提交,创建上下文信息并发送请求。
  • MRAppMaster.java初始化作业,创建Job对象并发送事件。
  • 作业启动后,调度Map和Reduce任务,最终处理作业的提交与完成。
  • Job.java的submit()函数是作业启动的核心,负责连接ResourceManager和提交作业。
  • YARNRunner.java创建上下文信息并提交作业,等待作业启动完成。
  • MRAppMaster.java是启动AM的入口,负责初始化作业和发送事件。
  • JobImpl对象初始化时,设置线程池和作业状态机。
  • 作业初始化成功后,触发作业启动事件,开始执行任务。
  • 作业提交后,处理作业的成功与失败,记录作业历史事件。

延伸问答

Job.java的submit()函数有什么作用?

submit()函数负责连接ResourceManager并提交作业,是作业启动的核心部分。

YARNRunner.java在作业启动中扮演什么角色?

YARNRunner.java负责处理作业提交,创建上下文信息并发送请求以启动作业。

MRAppMaster.java的主要功能是什么?

MRAppMaster.java是启动AM的入口,负责初始化作业和发送事件以启动作业。

作业启动后会发生什么?

作业启动后会调度Map和Reduce任务,并处理作业的提交与完成。

JobImpl对象在初始化时做了哪些设置?

JobImpl对象初始化时设置线程池和作业状态机,并注册事件处理器。

作业提交后如何处理成功与失败?

作业提交后会记录作业历史事件,并处理作业的成功与失败情况。

➡️

继续阅读