IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 大数据 -> 第三章:MapReduce与YARN的理解 -> 正文阅读

[大数据]第三章:MapReduce与YARN的理解

1. MapReduce

概述:

  • 一个最终完整版本的MR程序需要用户编写的代码Hadoop自己实现的代码整合在一起才可以;
  • 其中用户负责map、reduce两个阶段的业务问题,Hadoop负责底层所有的技术问题;

MapReduce核心思绪先分再合,分而治之,主要目的:并行运行任务,提高效率。
在这里插入图片描述
注意: 不可拆分的计算任务或相互间有依赖关系的数据无法并行计算:
在这里插入图片描述

MapReduce特点:

  • 易于编程:简单的接口就可以完成分布式程序;
  • 良好的扩展性:MR的分布式计算的特点可以随节点数据增长保持近似于线性增长,增加机器,就可以可以处理海量数据;
  • 高容错性
  • 离线计算
  • 实时计算性能差
  • 不能进行流行计算

MapReduce实例
一个完整的MapReduce程序在分布式运行时有三类

  • MRAppMaster:负责整个MR程序的过程调度及状态协调
  • MapTask:负责map阶段的整个数据处理流程
  • ReduceTask :负责reduce阶段的整个数据处理流程

MaprReduce的阶段组成

  • 一个MapReduce编程模型中只能包含一个Map阶段和一个Reduce阶段,或者只有Map阶段;
  • 不能有诸如多个map阶段、多个reduce阶段的情景出现;
  • 如果用户的业务逻辑非常复杂,那就只能多个MapReduce程序串行运行。
    在这里插入图片描述

2. YARN

YARN概述:YARN是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度。

YARN功能说明:

  • 资源管理系统︰集群的硬件资源,和程序运行相关,比如内存CPU等。
  • 调度平台∶多个程序同时申请计算资源如何分配,调度的规则(算法)。
  • 通用∶不仅仅支持MapReduce程序,理论上支持各种计算程序。YARN不关心你干什么,只关心你要资源,在有的情况下给你,用完之后还我。

YARN架构图:
在这里插入图片描述

  • ResourceManager ( RM )
    YARN集群中的主角色,决定系统中所有应用程序之间资源分配的最终权限,即最终仲裁者。接收用户的作业提交,并通过NM分配、管理各个机器上的计算资源。
  • NodeManager (NM )
    YARN中的从角色,一台机器上一个,负责管理本机器上的计算资源。根据RM命令,启动Container容器、监视容器的资源使用情况。并且向RM主角色汇报资源使用情况。
  • ApplicationMaster ( AM )
    用户提交的每个应用程序均包含一个AM.
    应用程序内的“老大”,负责程序内部各阶段的资源申请,监督程序的执行情况。

YARN的三种调度策略

  • FIFO sheduler: 先进先出
    优势:无需配置,先到先得,易于执行。
    坏处:任务的优先级不会变高,因此高优先级的作业需要等待不适合共享集群。

在这里插入图片描述

  • Capacity scheduler:为每个组织分配专门的队列,然后再为每个队列分配一定的集群资源。(YARN的默认调度器)
    优势: 层次化的队列设计、容量保证、安全、弹性分配。
    坏处:不能公平的分配资源。

在这里插入图片描述

  • Fair Scheduler:公平共享资源
    **优势:**公平共享资源、资源抢先、基于用户或组的队列映射。
    在这里插入图片描述

参考: https://www.bilibili.com/video/BV1CU4y1N7Sh?p=39&spm_id_from=pageDriver

  大数据 最新文章
实现Kafka至少消费一次
亚马逊云科技:还在苦于ETL?Zero ETL的时代
初探MapReduce
【SpringBoot框架篇】32.基于注解+redis实现
Elasticsearch:如何减少 Elasticsearch 集
Go redis操作
Redis面试题
专题五 Redis高并发场景
基于GBase8s和Calcite的多数据源查询
Redis——底层数据结构原理
上一篇文章      下一篇文章      查看所有文章
加:2022-03-30 18:32:03  更:2022-03-30 18:34:37 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2025年1日历 -2025/1/16 15:43:06-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码