打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
大数据干货分享Mapreduce中job的提交流程

  大数据干货分享Mapreducejob的提交流程

一、MapReduce的定义:

  MapReduce是面向大数据并行处理的计算模型、框架和平台。

  它的主要思想是:map(映射)和reduce(归约)

  1MapReduce是一个基于集群的高性能并行计算平台

  2MapReduce是一个并行计算与运行软件框架

  3MapReduce是一个并行程序设计模型与方法

二、MapReduce的主要功能:

  1、数据划分和计算任务调度

  2、数据/代码互定位

  3、系统优化

  4、出错检测和恢复

三、计算任务调度中job的提交流程

  遇到的问题:

  在学到这的时候,我们会面临一些问题:

  1、首先面临的问题就是数据是如何分布的?

  2、一个超大文件按照那种方式切割下来,分别丢到不同的机器上?

  3、按照某种方式切割下来后,是如何丢到不同机器上去的?

  4、某个机器分配到什么任务?如何分配的?

  5、拿到任务后如何解决的?

  6、带着这些问题,我们就需要学习一下job的提交流程,从该流程中去寻找我们问题的答案。

  Job的具体提交流程如下图所示:

  


  我们用文字概括如下:

1、  客户端提交jobresourcemanager(rm)

2、  rm将其放到等待队列,返回jobid和文件路径信息

3、  客户端将所需要计算的资源,上传到hdfs(包括job信息和分片信息)的存储路径

4、  客户端给rm返回一个资源准备好的信息,job放入等待队列,告诉他可以启动job,等待rm进行调度

5、  rm在调度之前,申请一个资源nodemanager(nm)nm启动container,它接收到任务到hdfs上将资源获取到container,然后跟客户端交互已经得到需要计算的资源,客户端向其发送启动applicationmaster(am)的命令

6、  am启动起来后,通过解析分片信息向rm申请运算资源(maptask)

7、  rm收到信息查看nm资源情况,通过负载均衡分配所需要的机器,nm每一次心跳都会从job的描述信息查询自己所分配到的任务,接收到任务消息的机器会从hdfs上拿取计算资源,然后跟am交互,am发送启动maptask的命令。

8、  Maptask结束后,通知am,然后释放maptask资源,amrm发出信息,申请reducetask的资源

9、  rm分配资源,am启动reducetask

10、  reducetask收集maptask完成的数据,启动reduce逻辑。执行完成后,通知am,然后释放reducetask的资源。am通知rmam释放资源

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
MapReduce与Yarn 的详细工作流程分析
Hadoop学习之路(十四)MapReduce的核心运行机制
MapReduce 框架原理
hadoop中mapreduce部分执行流程
Hadoop API使用
Hadoop | In Programming We Trust
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服