• hadoop使用yarn运行mapreduce的过程


    如图:

        1、客户端提交MapReduce Job到YARN ResourceManager获取新的作业ID。
        2、YARN ResourceManager返回给客户端一个应用程序ID,即JobID和存储作业资源的路径。
        3、客户端检查作业的输出说明计算输入分片,并将作业的资源即作业Jar包、配置、输入分片存储10份到HDFS中(Hadoop源码中默认存储10份)。
        4、调用YarnClientImpl.submitApplication()方法提交作业。
        5、YARN ResourceManager收到客户端提交的作业后则交给Scheduler(Hadoop2中默认Capacity Scheduler)执行,Scheduler会分配一个Container,然后YARN ResourceManager在NodeManager的管理下在这个Container中启动MRAppMaster应用程序。
        6、MapReduce Job的ApplicationMaster即MRAppMaster是一个java应用程序,主类是MRAppMaster。它对作业初始化并创建多个簿记对象保持多MapReduce Job的跟踪(包括来自任务的进度和完成报告)。
        7、MRAppMaster会找出客户端计算好并存储在HDFS上的输入分片信息,并为每一个分片创建一个Map Task对象和配置中定义的多个Reduce任务对象(配置文件mapred-default.xml或mapred-site.xml中的mapreduce.job.reduces属性决定的)。
        8、MRAppMaster为MapReduce Job的Map Task和Reduce Task向YARN ResourceManager请求容器(包含MapTask数据的本地化信息、输入分片的节点和机架信息、内存需求)。
        9、YARN ResourceManager的Scheduler为任务分配了Container后,MRAppMaster通知NodeManager来启动Container。
        10、Map Task或Reduce Task是一个java应用程序,主类是YarnChild。运行前会将需要的资源(配置、Jar包、来自分布式缓存的文件)进行本地化。
        11、开始运行Map Task或Reduce Task。

  • 相关阅读:
    WCF步步为营(三):使用配置文件改变使用服务的方式
    WCF步步为营(五):数据契约
    弹性工作制下的IT项目管理
    C#拾遗系列(8):异常
    WCF步步为营(一):简单示例
    敏捷的 "道"
    从中国男足看项目管理
    WCF步步为营(二):使用配置文件改变发布服务的方式
    WCF步步为营(四):客户端使用代理类使用服务
    C#拾遗系列(9):继承、接口、扩展方法、分部类、类操作、Ref and Out、可空类型
  • 原文地址:https://www.cnblogs.com/mengyao/p/4652120.html
Copyright © 2020-2023  润新知