大数据第二天

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 大数据第二天的更多相关文章

  1. FusionInsight大数据开发---MapReduce与YARN应用开发

    MapReduce MapReduce的基本定义及过程 搭建开发环境 代码实例及运行程序 MapReduce开发接口介绍 1. MapReduce的基本定义及过程 MapReduce是面向大数据并行处 ...

  2. 坐实大数据资源调度框架之王,Yarn为何这么牛

    摘要:Yarn的出现伴随着Hadoop的发展,使Hadoop从一个单一的大数据计算引擎,成为大数据的代名词. 本文分享自华为云社区<Yarn为何能坐实资源调度框架之王?>,作者: Java ...

  3. 开源大数据技术专场(上午):Spark、HBase、JStorm应用与实践

    16日上午9点,2016云栖大会“开源大数据技术专场” (全天)在阿里云技术专家封神的主持下开启.通过封神了解到,在上午的专场中,阿里云高级技术专家无谓.阿里云技术专家封神.阿里巴巴中间件技术部高级技 ...

  4. java大数据最全课程学习笔记(1)--Hadoop简介和安装及伪分布式

    Hadoop简介和安装及伪分布式 大数据概念 大数据概论 大数据(Big Data): 指无法在一定时间范围内用常规软件工具进行捕捉,管理和处理的数据集合,是需要新处理模式才能具有更强的决策力,洞察发 ...

  5. oschina大数据开源软件

    Hadoop 图形化用户界面 Hue 大数据可视化工具 Nanocubes 企业大数据平台 RedHadoop 大数据查询引擎 PrestoDB Hadoop集群监控工具 HTools 安全大数据分析 ...

  6. 【互动问答分享】第18期决胜云计算大数据时代Spark亚太研究院公益大讲堂

    Q1:Master和Driver的是同一个东西吗? 两者不是同一个东西,在Standalone模式下Master是用于集群资源管理和调度的,而Driver适用于指挥Worker上的Executor通过 ...

  7. 大数据入门第八天——MapReduce详解(三)MR的shuffer、combiner与Yarn集群分析

    /mr的combiner /mr的排序 /mr的shuffle /mr与yarn /mr运行模式 /mr实现join /mr全局图 /mr的压缩 今日提纲 一.流量汇总排序的实现 1.需求 对日志数据 ...

  8. C#码农的大数据之路 - 使用C#编写MR作业

    系列目录 写在前面 从Hadoop出现至今,大数据几乎就是Java平台专属一般.虽然Hadoop或Spark也提供了接口可以与其他语言一起使用,但作为基于JVM运行的框架,Java系语言有着天生优势. ...

  9. CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令

    相关文章链接 CentOS6安装各种大数据软件 第一章:各个软件版本介绍 CentOS6安装各种大数据软件 第二章:Linux各个软件启动命令 CentOS6安装各种大数据软件 第三章:Linux基础 ...

随机推荐

  1. <<< 三大框架简短介绍

    Struts 搞业务 Spring 主要是AOP(面向方面编程)和IOC(控制反转)它里面用到很多的设计模式Hibernate Orm映射工具 实现面向对象的方式操作数据库hibernate 封装了j ...

  2. 第六章 大数据,6.3 突破传统,4k大屏的沉浸式体验(作者: 彦川、小丛)

    6.3 突破传统,4k大屏的沉浸式体验 前言 能够在 4K 的页面上表演,对设计师和前端开发来说,即是机会也是挑战,我们可以有更大的空间设计宏观的场景,炫酷的转场,让观众感受影院式视觉体验,但是,又必 ...

  3. C++计算几何库

    http://www.cgal.org/ http://shapeop.org/

  4. thinkphp 3.2加载类

    基础方式(自动加载) 控制器: public function ff(){ $t = new \Org\Util\Abc(); echo $t->ss(); } ThinkPHP\Library ...

  5. Spring系列之bean的使用

    一.Bean的定义 <bean id="userDao" class="com.dev.spring.simple.MemoryUserDao"/> ...

  6. [译]ES6新特性:八进制和二进制整数字面量

    原文:http://whereswalden.com/2013/08/12/micro-feature-from-es6-now-in-firefox-aurora-and-nightly-binar ...

  7. 聊聊Azure的安全性

    本来没打算写这篇博文,毕竟感觉太理论化,不像做技术的人应该写的东西,但是作为一名售前,发现很多不了解Azure的客户,上来的第一个问题竟然就是Azure如何保证客户数据的安全性,我清楚记得我第一次被问 ...

  8. 第2月第5天 arc invocation getReturnValue

    http://blog.csdn.net/zengconggen/article/details/38024625

  9. C和指针 第五章 位数组

    5.4的习题:编写一组函数,实现维数组,函数原型如下: //指定位设置为1void set_bit(char bit_array[], unsigned bit_number); //指定位清零 vo ...

  10. python pickle

    >>> import pickle >>> m_list=[',2,'asa'] >>> m_list [', 2, 'asa'] >> ...