zoukankan      html  css  js  c++  java
  • Yarn 资源调度框架

    Yarn 资源调度框架
        实现对资源的细粒度封装(cpu,内存,带宽)
        此外,还可以通过yarn协调多种不同计算框架(MR,Spark)
        概述
            Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在资源利用率、资源统一管理和数据共享等方面带来了巨大好处。
        核心思想
            a. 一个全局的资源管理器 ResourceManager
            b.ResourceManager的每个节点代理 NodeManager
            c. 表示每个应用的 ApplicationMaster
            d. 每一个ApplicationMaster拥有多个Container在NodeManager上运行
        架构
            RM是一个全局的资源管理器,负责整个系统的资源管理和分配。它主要由两个组件构成:调度器(Scheduler)和应用程序管理器(Applications Manager,ASM)。
            调度器仅根据各个应用程序的资源需求进行资源分配,而资源分配单位用一个抽象概念“资源容器”(Resource Container,简称Container)表示,
            ApplicationMaster(AM)
                用户提交的每个应用程序均包含一个AM,主要功能包括:
                与RM调度器协商以获取资源(用Container表示);
                将得到的任务进一步分配给内部的任务(资源的二次分配);
                与NM通信以启动/停止任务;
                监控所有任务运行状态,并在任务运行失败时重新为任务申请资源以重启任务。
            NodeManager(NM)
                NM是每个节点上的资源和任务管理器,一方面,它会定时地向RM汇报本节点上的资源使用情况和各个Container的运行状态;另一方面,它接收并处理来自AM的Container启动/停止等各种请求。
            Container
                Container是YARN中的资源抽象,它封装了某个节点上的内存、CPU资源,当AM向RM申请资源时,RM为AM返回的资源便是用Container表示。YARN会为每个任务分配一个Container,且该任务只能使用该Container中描述的资源。
        uber模式
            开启这种模式可以让JVM重用。据Arun的说法,启用该功能能够让一些任务的执行效率提高2到3倍(“we've observed 2x-3x speedup for some jobs”)
        小文件处理方法
            处理方式一:开启Hadoop的JVM重用机制,避免海量小文件(海量的map任务)带来的JVM频繁启停。
            处理方式二:将多个小文件合成一个文件或合成少量文件,这样可以减少map的任务数量

  • 相关阅读:
    锚接口(上)——hashchange api 和 $.uriAnchor
    仿B站项目(4)webpack打包第三方库jQuery
    仿B站项目(3)页面配置
    微信小程序:scroll滑到指定位置
    开发微信小程序——古龙小说阅读器
    仿B站项目——(2)环境配置,文件目录
    仿B站项目——(1)计划,前端工程
    腾讯Alloy团队代码规范
    webpack热加载:修改文件自动刷新浏览器并更新
    日时相克,困龙被伤。日落死地
  • 原文地址:https://www.cnblogs.com/Striverchen/p/10557825.html
Copyright © 2011-2022 走看看