YARN 的介绍

news2024/12/23 21:15:29

YARN 的介绍

  • 一、YARN 产生背景
    • 1.1 MapReduce 1.0 系统架构
  • 1.2 MapReduce 1.0架构缺陷
  • 二、YARN 是什么
  • 三、YARN 作用
  • 四、YARN 架构
  • 五、工作原理
  • 六、MapReduce ON YARN 工作流程
  • 七、YARN 的容错性
  • 八、YARN 的高可用
  • 八、YARN 调度器
    • 8.1 先进先出调度器
    • 8.2 容量调度器
    • 8.3 公平调度器

一、YARN 产生背景

1.1 MapReduce 1.0 系统架构

在这里插入图片描述

1.2 MapReduce 1.0架构缺陷

  • 扩展性差
    • JobTracker 同时兼备了资源管理和作业控制两个功能,严重制约了 Hadoop 集群扩展性
  • 资源利用率低
    • MRv1采用基于slot的粗粒度的资源分配模型,包含Map slot和Reduce slot。某个任务用不完的资源其他任务也不能用,因为map和reduce的资源完全不能共享的。当一个作业刚提交时,只会运行Map Task,此时Reduce Slot 闲置。
  • 通用性差
    • 随着互联网高速发展导致数据量剧增,MapReduce这种基于磁盘的离线计算框架已经不能满足应用要求,从而出现了一些新的计算框架以应对各种场景,包括内存计算框架、流式计算框架和迭代式计算框架等,而MRv1不能支持多种计算框架并存。
  • 单点故障
    • MRv1 采用了master/slave 结构,其中 master 存在单点故障问题,一旦它出现故障将导致整个集群不可用

二、YARN 是什么

  • YARN 是Hadoop2.0版本新引入的资源管理系统,接从MR1演化而来。

  • Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的Hadoop 资源管理器,它是一个通用资源管理系统,可为上层应用提供统一的资源管理和调度,它的引入为集群在利用率、资源统一管理和数据共享等方面带来了巨大好处。

  • 核心思想:将MR1中JobTracker的资源管理和作业调度两个功能分开,分别ResourceManager和ApplicationMaster进程来实现。

  • ResourceManager负责整个集群的资源管理和调度。ApplicationMaster负责应用程序相关的事务,比如任务调度、任务监控和容错等

三、YARN 作用

在这里插入图片描述

四、YARN 架构

在这里插入图片描述

五、工作原理

在这里插入图片描述

六、MapReduce ON YARN 工作流程

在这里插入图片描述

七、YARN 的容错性

  • ResourceManager的容错性保障ResourceManager存在单点故障,但是可以通过配置实现ResourceManager的HA(高可用),当主节点出现故障时,可以切换到备用节点继续对外提供服务。
  • NodeManager的容错性保障NodeManager失败之后,ResourceManager会将失败的任务通知对应的ApplicationMaster,由ApplicationMaster来决定如何去处理失败的任务。
  • ApplicationMaster的容错性保障ApplicationMaster失败后,由ResourceManager负责重启即可。其中,ApplicationMaster需要处理内部任务的容错问题。ResourceManager会保存已经运行的任务,重启后无须重新运行。

八、YARN 的高可用

在这里插入图片描述

八、YARN 调度器

8.1 先进先出调度器

在这里插入图片描述

8.2 容量调度器

在这里插入图片描述

8.3 公平调度器

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1992390.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

PyTorch深度学习实战(1)——PyTorch安装与配置

本章共有两节,2.1节介绍如何安装PyTorch,以及如何配置学习环境;2.2节带领读者快速浏览PyTorch中的主要内容,帮助读者初步了解PyTorch。 PyTorch是一款以C语言为主导开发的轻量级深度学习框架,它提供了丰富的Python接口…

Redis 大Key排查与优化

Redis 大Key排查与优化 什么是BigKey bigkey简单来说就是存储本身的key值空间太大,或者hash,list,set等存储中value值过多。没有具体的衡量标准。 参考的大小范围: String 类型值大于10KB。Hash、List、Set、Zset类型元素个数…

【Mybatis Plus】Mybatis Plus_快速上手

文章目录 1.Mybatis Plus 简介2.与SpringBoot集成2.1在maven中引入MP依赖2.3 在application.yml中,配置好自己的数据库文件 3. 快速上手 创建实体类entity/User.java3.1创建通用Mapper3.2 使用继承了BaseMapper的Mapper开始编写Crud3.2.1 Insert3.2.2 deleted3.2.3 …

5.1树的基本概念

5.11树的定义 树是n>0的有限集.树适用于有层次结构的数据 只有根节点无前驱 只有叶子节点无后继 有后继的节点为分支节点 除根节点外,任何一个节点都有且只有一个前驱 5.12树的基本术语 祖先节点:从k-->R经过的所有节点 子孙节点:从一个节点出发后下面的所有节点 …

Oracle【plsql编写九九乘法表】

九九乘法表 DECLAREi NUMBER : 1;j NUMBER : 1; BEGINFOR i IN 1 .. 9LOOPFOR j IN 1 .. iLOOPDBMS_OUTPUT.put (i || * || j || || i * j || );END LOOP;DBMS_OUTPUT.put_line ( );END LOOP; END;输出结果

【YashanDB数据库】Ubuntu系统加载Yashan C驱动后无法使用PHP

【问题分类】驱动使用 【关键字】驱动使用、PHP、Ubuntu、C驱动 【问题描述】 客户将YashanDB的C驱动lib加载到环境变量LD_LIBRARY_PATH后,PHP报错:PHP Fatal error:Unable to start pcre module in Unknown on line 0 【问题原因分析】经…

集成学习:融合多个模型

集成学习 是一种机器学习范式,它创建一组模型,并将它们的预测结果结合起来,以期望最终模型能够优于单个模型。集成学习的关键在于如何有效地结合不同的模型。 集成学习算法分为:Bagging,Boosting和Stacking等类型。 B…

关于k8s集群的存储卷

目录 1.emptyDir存储卷 2.hostPath存储卷 3.nfs共享存储卷 容器磁盘上的文件的生命周期是短暂的,这就使得在容器中运行重要应用时会出现一些问题。首先,当容器崩溃时,kubelet 会重启它,但是容器中的文件将丢失——容器以干净的…

大神器! 直接显示中英文期刊的等级, 及该期刊在中国顶级大学的认可度!

今天,推荐一款学术神器——easyScholar,别看这个插件小小的,它的功能非常强大。 它可以显示期刊的影响因子、中科院分区、JCR分区等信息! 比如,它可以在知网数据库中显示期刊等级信息。 也能够在万方数据库中显示期刊等…

【Linux WEB】Linux嵌入式WEB服务器(BOA)部署

1. 下载boa源码 进入官网下载http://www.boa.org/news.html,版本为0.94.13 2. 交叉编译boa源码 2.1 解压boa源码压缩包   将下载好的压缩包放入到Ubuntu系统中进行解压 tar -zxvf boa-0.94.13.tar.gz 2.2 生成并配置Makefile文件 (1)将…

交换机常用的贴片网络变压器,滤波器H5084NL / H82409S

华强盛电子导读千兆交换机: 199/2643/0038 在交换机行业中,常用的贴片网络变压器和滤波器型号会根据具体的应用需求、性能指标、成本考量等因素而有所不同。通常,这些器件需要满足网络通信中的高频传输、阻抗匹配、信号隔离、电磁兼容&…

【C++】vector 的模拟实现

📢博客主页:https://blog.csdn.net/2301_779549673 📢欢迎点赞 👍 收藏 ⭐留言 📝 如有错误敬请指正! 📢本文由 JohnKi 原创,首发于 CSDN🙉 📢未来很长&#…

⌈ 传知代码 ⌋ CNN实现脑电信号的情感识别

💛前情提要💛 本文是传知代码平台中的相关前沿知识与技术的分享~ 接下来我们即将进入一个全新的空间,对技术有一个全新的视角~ 本文所涉及所有资源均在传知代码平台可获取 以下的内容一定会让你对AI 赋能时代有一个颠覆性的认识哦&#x…

怎么压缩ppt文件?4个常用的PPT压缩技巧分享!

在当今数字化的工作和学习环境中,PPT已经成为我们表达观点、展示成果的重要工具。然而,有时PPT文件的体积过大,给我们的分享和存储带来了诸多不便,表现在:无端占用宝贵的磁盘空间,接收下载耗费时间长等。 …

KSV1(KSU1)/KSV5(KSU5)-创建分配(分摊)规则/运行分配

将A成本中心费用分摊给B、C两个成本中心: 将B、C两个成本中心建一个成本中心组KSV1-创建分配规则 选择发送方的成本中心,选择接收方的成本中心 给不同成本中心分配比例。 点击保存 点击概览可以看到该条规则,可以在系统中创建多条规则。 K…

优阅达携手 HubSpot 助力出海企业营销、销售和服务自动化

2024 年 6 月 17 - 18 日,GTC 2024 全球流量大会在深圳福田会展中心圆满举办。作为跨境出海行业产业链最全、资源最丰富、规模最大的专业展会之一,本次大会聚集了近 3 万名从业者、超过 200 家海内外优质开发厂商,品牌方、服务商,…

【海贼王航海日志:前端技术探索】CSS你了解多少?(二)

目录 1 -> 字体属性 1.1 -> 设置字体 1.2 -> 字体大小 1.3 -> 字体粗细 1.4 -> 文字样式 2 -> 文本属性 2.1 -> 文本颜色 2.1.1 -> 认识RGB 2.1.2 -> 设置文本颜色 2.2 -> 文本对齐 2.3 -> 文本装饰 2.4 -> 文本缩进 2.5 -&g…

Go开发后端和Vue3开发前端的前后端分离框架中自己手戳一个OA流程审批、工作流引擎给新时代一个漂亮便捷的工作流引擎

前言 在软件项目开发中,我们都会接触到流程审批的需要业务,我们以往用的最多就是如下图这种流程编辑引擎插件: 以上截图中的流程工具是不是大家常见的呀!感觉很丑拿不出手呀!在当前行业内卷及竞争激烈情况下&#xff…

uniapp免费申请苹果证书教程每次7天可用于测试

准备一个苹果账号没有加入过任何组织的 然后下载appuploader下载链接 登录上去切记勾选上未付苹果688 然后点击苹果证书创建p12证书 创建描述文件 uniapp打包自定义基座 这就打包好了可以愉快地开发了,但每次生成只有7天,设备限制3个&#xff0c…

【C++】STL | priority_queue 堆(优先级队列)详解(使用+底层实现)、仿函数的引入、容器适配器的使用

目录 前言 总代码 堆的简介 仿函数 堆的基础框架建立size、empty、top、 向上调整法 and push 向上调整 push 向下调整法 and pop 向下调整法 pop 迭代器区间初始化(构造) 逻辑讲解 为何选择向下建堆? 建堆代码实现 结语 前言…