YARN-MR 大数据第二天
大数据第二天 1.YARN(管理和调度集群中的各类资源)
1.1 产生的背景:
1.直接源于MR版本1的缺陷(如:单点故障、难以支持MR之外的计算框架等)
2.多计算框架各自为站,数据共享困难(如:MR离线计算框架 Storm实时计算框架 Spark内存计算框架)
1.2 架构(采用master-slave结构)
ResourceManager(管理和调配YARN集群的资源)
特性:整个集群只有一个
作用:
处理客户端请求
启动和监控ApplicationMaster
监控NodeManager
资源分配和调度
容错性:存在单点故障(正在实现HA 即主备架构 主一旦挂掉,备切换)
NodeManager(执行计算作业)
特性:可以多个
作用:
单个节点上的资源管理和任务管理
处理来自ResourceManager的命令
处理来自ApplicationMaster的命令
容错性:失败后,RM将失败任务告诉对应AM,由AM决定如何处理失败的任务
ApplicationMaster(负责应用程序的管理)
特性:每个应用有一个
作用:
数据切分
任务监控和容错
容错性:失败后由RM负责重启;AM需处理内部任务的容错问题;会自动保存已经运行完成的任务,重启后无需重新运行
Container(对任务运行环境的抽象)
系列信息:
任务启动命令
任务运行环境
任务运行资源
1.3 原理
1.客户端client发送任务请求给ResourceManager
2.ResourceManager收到请求后根据资源占用情况分配对应NodeManager
3.NodeManager收到ResourceManager的命令后开辟一个ApplicationMaster
4.ApplicationMaster对任务分析和数据切分后,将要占用的资源情况发送给ResourceManager
5.ResourceManager根据实时的资源占用情况进行动态分配资源
6.ApplicationMasterna拿到资源后再跟对应的NodeManager进行通信
7.NodeManager得到计算任务后,分配对应的Container容器来执行对应的Task任务
1.4 调度策略
a.双层调度策略
RM将资源分配给AM
AM将资源进一步分配给各个任务
b.基于资源预留的调度策略
当资源不够时,会为任务预留,直到资源充足
1.5 YARN与计算框架的关系
如果YARN是安卓系统的話,那么计算框架就是系统中的一个APP
其中计算框架有:
基于离线计算框架————MR
基于内存计算框架————Spark
基于流式计算框架————Storm 2.MapReduce(基于离线计算框架)
2.1 MapReduce特点:
易于编程
良好的扩展性
高容错性
适合海量数据的离线处理
2.2 基本过程
Map阶段-Shuffle-Reduce阶段
Map阶段:
输入数据格式解析————InputFormat
输入数据处理————Mapper
数据分组————Partitioner
Reduce阶段:
数据处理————Redecer
数据输出格式————OutputFormat
2.3 基本思想
大文件分为若干个小文件,计算各个小文件得到结果,然后再汇总输出
2.4 架构
采用YARN架构
2.5 应用场景
简单的数据统计 比如:网站的PV UV
搜索引擎建索引
海量数据查找
复杂的数据分析算法实现 比如:聚类、分类、推荐、图算法
2.6 Java编程
1.导jar包(旧包兼容2.0,新包不一定支持)
2.编写mapper
3.编写reduce
4.打包
5.发布
YARN-MR 大数据第二天的更多相关文章
- FusionInsight大数据开发---MapReduce与YARN应用开发
MapReduce MapReduce的基本定义及过程 搭建开发环境 代码实例及运行程序 MapReduce开发接口介绍 1. MapReduce的基本定义及过程 MapReduce是面向大数据并行处 ...
- 坐实大数据资源调度框架之王,Yarn为何这么牛
摘要:Yarn的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计算引擎,成为大数据的代名词. 本文分享自华为云社区<Yarn为何能坐实资源调度框架之王?>,作者: Java ...
- 开源大数据技术专场(上午):Spark、HBase、JStorm应用与实践
16日上午9点,2016云栖大会“开源大数据技术专场” (全天)在阿里云技术专家封神的主持下开启.通过封神了解到,在上午的专场中,阿里云高级技术专家无谓.阿里云技术专家封神.阿里巴巴中间件技术部高级技 ...
- java大数据最全课程学习笔记(1)--Hadoop简介和安装及伪分布式
Hadoop简介和安装及伪分布式 大数据概念 大数据概论 大数据(Big Data): 指无法在一定时间范围内用常规软件工具进行捕捉,管理和处理的数据集合,是需要新处理模式才能具有更强的决策力,洞察发 ...
- oschina大数据开源软件
Hadoop 图形化用户界面 Hue 大数据可视化工具 Nanocubes 企业大数据平台 RedHadoop 大数据查询引擎 PrestoDB Hadoop集群监控工具 HTools 安全大数据分析 ...
- 【互动问答分享】第18期决胜云计算大数据时代Spark亚太研究院公益大讲堂
Q1:Master和Driver的是同一个东西吗? 两者不是同一个东西,在Standalone模式下Master是用于集群资源管理和调度的,而Driver适用于指挥Worker上的Executor通过 ...
- 大数据入门第八天——MapReduce详解(三)MR的shuffer、combiner与Yarn集群分析
/mr的combiner /mr的排序 /mr的shuffle /mr与yarn /mr运行模式 /mr实现join /mr全局图 /mr的压缩 今日提纲 一.流量汇总排序的实现 1.需求 对日志数据 ...
- C#码农的大数据之路 - 使用C#编写MR作业
系列目录 写在前面 从Hadoop出现至今,大数据几乎就是Java平台专属一般.虽然Hadoop或Spark也提供了接口可以与其他语言一起使用,但作为基于JVM运行的框架,Java系语言有着天生优势. ...
- CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令
相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...
随机推荐
- fedora22切换用户windows分区不能自动挂载
新建立一个用户后,然后登陆后,再次登出,登陆原来的账户windows分区不能自动挂载
- HDU1086You can Solve a Geometry Problem too(判断线段相交)
You can Solve a Geometry Problem too Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/3 ...
- asp.net读取execl模板并填充数据,关闭进程
<head runat="server"> <title></title> <script src="Scripts/jquer ...
- 介绍对称加密的另一个算法——PBE
除了DES,我们还知道有DESede(TripleDES,就是3DES).AES.Blowfish.RC2.RC4(ARCFOUR)等多种对称加密方式,其实现方式大同小异,这里介绍对称加密的另一个算法 ...
- JAVA语言规范-线程和锁章节之同步、等待和通知
JAVA语言规范:线程和锁 1 同步 java编程语言提供了线程间通信的多种机制.这些方法中最基本的是同步化,此方法是使用监视器实现的.JAVA中每个对象与一个监视器相关联,一个线程可以加锁和解锁监视 ...
- 【转】ASP.NET MVC学习笔记-Controller的ActionResult
1. 返回ViewResult public ActionResult Index() { ViewData["Message"] = "Welcome ...
- 深入理解javascript原型和闭包(16)——完结
之前一共用15篇文章,把javascript的原型和闭包. 首先,javascript本来就“不容易学”.不是说它有多难,而是学习它的人,往往都是在学会了其他语言之后,又学javascript.有其他 ...
- 深入理解javascript原型和闭包(18)——补充:上下文环境和作用域的关系
本系列用了大量的篇幅讲解了上下文环境和作用域,有些人反映这两个是一回儿事.本文就用一个小例子来说明一下,作用域和上下文环境绝对不是一回事儿. 再说明之前,咱们先用简单的语言来概括一下这两个的区别. 0 ...
- Linux下忘记MySQL的root密码的解决方法
恢复方法之一 1.首先确认服务器出于安全的状态,也就是没有人能够任意地连接MySQL数据库. 因为在重新设置MySQL的root密码的期间,MySQL数据库完全出于没有密码保护的 状态下,其他的用户也 ...
- 【强烈推荐】如何给TortoiseGit 配置密钥?
TortoiseGit 使用扩展名为ppk的密钥,而不是ssh-keygen生成的rsa密钥.也就是说使用 ssh-keygen -C "username@email.com" - ...