Yarn基础知识(个人总结)

2023-11-12

    声明: 1. 本文为我的个人复习总结, 并那种从零基础开始普及知识 内容详细全面, 言辞官方的文章
              2. 由于是个人总结, 所以用最精简的话语来写文章
              3. 若有错误不当之处, 请指出

Yarn架构:

在这里插入图片描述

​ Yarn集群有一个ResourceManager, 每台服务器有一个NodeManager;

​ 每个NodeManager上有一堆Container(资源),

​ 每个Container间相互隔离, 是一台独立的小电脑, 可以运行ApplicationMaster, MapTask等

​ ApplicationMaster是负责申请Container资源的, 和监控运行的任务(如MR任务)

Yarn工作机制(作业提交全流程):

在这里插入图片描述

一, 作业提交 & 运行MRAppMaster

  1. MR程序提交到客户端所在的节点
  2. YarnRunner向ResourceManager申请一个Application
  3. RM返回给YarnRunner一个HDFS路径和ApplicationId
  4. 该程序将运行所需的数据资源(.split, .xml, .jar)提交到这个HDFS路径上
  5. 程序的数据资源提交完毕后, 申请运行MRAppMaster

二, 作业初始化

  1. RM将用户的请求初始化成一个Task, 放到调度队列中
  2. 其中一个NodeManager从调度队列中领取到Task任务
  3. 该NodeManager创建容器Container
  4. Container从HDFS上下载作业的数据资源(.split, .xml, .jar)到本地

三, 任务分配

  1. MRAppMaster向RM申请运行MapTask程序

  2. RM将运行MapTask任务分配给另外两个NodeManager, 另两个NodeManager分别领取任务并创建Container

四, 任务运行

  1. NodeManager启动MapTask

  2. MRAppMaster等待所有MapTask运行完毕后, 向RM申请Container 运行ReduceTask程序

  3. ReduceTask拉取MapTask的计算结果数据

  4. 程序运行完毕后, MRAppMaster向RM申请注销自己

资源调度器:

  1. FIFO

    • 单队列
    • 先到先服务
  2. Capacity Scheduler(Apache默认)

    • 相当于多个FiFO队列, 但默认只有一个default队列
    • 先到先服务
    • 可以对同一用户提交作业资源进行下载限制
    • 可以借调别的队列的闲置资源, 但等人家索要回来的时候必须立刻偿还
  3. Fair Scheduler(CDH默认)

    • 多队列, 且可以单独配置每个对列

    • 优先满足缺额(实际资源与应获资源的差值)大的, 每个任务都能分到资源

    • 可以设置job所需资源的下限

公平调度器一般大公司用, 并发量最高, 要求机器性能较好

在生产环境下队列怎么创建?

  • 按照框架名称:hive、spark、flink

  • 按照业务名称:登录、购物车、支付模块、部门1、部门2 (居多)

    好处:解耦、降低风险、可以实现任务降级(双十一, 降级不重要的功能, 节省下的资源给支付模块用)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Yarn基础知识(个人总结) 的相关文章

随机推荐

  • DDR5内存条容量计算

    DDR5内存条容量计算 一 理解DDR5通道的变化 二 理解芯片package 三 DDR5 symmetric module容量计算 之前对DDR的一些基础知识进行了总结 最近需要了解DDR5的知识 在之前文章基础上又有一些认识 所以重新
  • NumPy 的随机采样模块 random 使用简单介绍

    NumPy的API的简单介绍 NumPy 提供的random模块 提供了方便的自动生成 伪 随机数的API 一 使用简单随机数API生成随机数组 1 random rand d0 d1 dn 参数 d0 d1 dn int optional
  • MySQL 存储函数

    文章目录 1 简介 2 创建存储函数 3 调用存储函数 4 查看存储函数 SHOW FUNCTION STATUS SHOW CREATE FUNCTION 5 修改存储函数 6 删除存储函数 参考文献 1 简介 MySQL 存储函数 St
  • java向多线程中传递参数的三种方法详细介绍

    在传统的同步开发模式下 当我们调用一个函数时 通过这个函数的参数将数据传入 并通过这个函数的返回值来返回最终的计算结果 但在多线程的异步开发模式下 数据的传递和返回和同步开发模式有很大的区别 由于线程的运行和结束是不可预料的 因此 在传递和
  • 3-4 数据变换

    3 4 数据变换 请参考 数据准备和特征工程 中的相关章节 调试如下代码 基础知识 import pandas as pd data pd read csv home aistudio data data20514 freefall csv
  • Python 魔法方法

    视频版教程 Python3零基础7天入门实战视频教程 Python的魔法方法 也称为特殊方法或双下划线方法 是一种特殊的方法 用于在类中实现一些特殊的功能 这些方法的名称始终以双下划线开头和结尾 例如 init repr add 等 str
  • SaaS “可配置”和“多租户”架构的几种技术实现方式

    1 数据存储方式的选择 多租户 Multi Tenant 即多个租户共用一个实例 租户的数据既有隔离又有共享 说到底是要解决数据存储的问题 常用的数据存储方式有三种 方案一 独立数据库 一个Tenant 一个Database 的数据存储方式
  • 人脸识别体征提取arcFace技术

  • hexo编写博客问题

    创建并部署博客的基本步骤 hexo new 创建一个名字为 的博客 具体title也可在文档中修改 hexo clean 清除缓存文件 db json 和已生成的静态文件 public hexo g hexo generate的缩写 生成网
  • java中判断一个数是否为偶数

    package Day3 import com sun java swing plaf windows WindowsTabbedPaneUI public class Day03 Tast04 public static void mai
  • C#的数据类型

    C 的数据类型 1 整数类型 sbyte System SByte 8位有符号整数 short System Int16 16位有符号整数 int System Int32 32位有符号整数 long System Int64 64位有符号
  • 深度学习与计算机视觉(11)_基于deep learning的快速图像检索系统

    作者 寒小阳 时间 2016年3月 出处 http blog csdn net han xiaoyang article details 50856583 声明 版权所有 转载请联系作者并注明出处 1 引言 本系统是基于CVPR2015的论
  • openwrt 的常用指令

    https wiki openwrt org zh cn doc howto user beginner cli
  • C、C++内存对齐

    文章转载自 http www jellythink com archives 413 include
  • 【Spring基础】@Configuration和@Import

    起因 偶然间 用到了 Configuration创建Bean 对于 Configuration又学到了一些知识点 单例模式 网上查资料 理解有误差 以为单例模式一个类只有一个实例 只能创建一个Bean 但是如果同一个类需要创建多个对象的时候
  • spring boot上传文件-参数注入对象

    1 pom xml依赖
  • Spring mvc4使用jackson绑定controller返回

    1 spring MVC4以上 使用的json包有变更 2 使用之前的json包出现Java lang NoClassDefFoundError com fasterxml jackson core JsonProcessingExcept
  • IDEA中项目结构出现:0% classes,0% lines covered ,怎样去除?

    文章目录 1 现象 2 原因分析 3 去除解决 1 现象 IDEA中项目结构出现 0 classes 0 lines covered 2 原因分析 我是在启动项目的时候 点击了下图按钮 run with coverage 这是可以进行覆盖率
  • (大集合)Linux进程和线程的基本编程、通讯和例程【杂记】

    Linux 进程 和 线程 的基本 编程 通讯 和 例程 注 杂记 系列为日常网搜资料的堆砌而积累成之 如有错误恭谢指出 标识为 原创 其实不完全是 只是多引用再整理和加上自己的理解 进行记录备查 大都引自网络 侵删 大量参考 100ask
  • Yarn基础知识(个人总结)

    声明 1 本文为我的个人复习总结 并非那种从零基础开始普及知识 内容详细全面 言辞官方的文章 2 由于是个人总结 所以用最精简的话语来写文章 3 若有错误不当之处 请指出 Yarn架构 Yarn集群有一个ResourceManager 每台