收藏 分销(赏)

Hadoop20架构设计与原理.pptx

上传人:丰**** 文档编号:4840969 上传时间:2024-10-14 格式:PPTX 页数:59 大小:3.55MB
下载 相关 举报
Hadoop20架构设计与原理.pptx_第1页
第1页 / 共59页
Hadoop20架构设计与原理.pptx_第2页
第2页 / 共59页
Hadoop20架构设计与原理.pptx_第3页
第3页 / 共59页
Hadoop20架构设计与原理.pptx_第4页
第4页 / 共59页
Hadoop20架构设计与原理.pptx_第5页
第5页 / 共59页
点击查看更多>>
资源描述

1、Hadoop2.0架构设计与原理数据中心-Alan主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的计算框架6YARN 发展趋势主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势Hadoop概述n Hadoop是一个开源的、可靠的、可扩展的分布式并行计算框架n主要组成:分布式文件系统HDFS和MapReduce算法执行n作者:Doug Cuttingn语言:Java,支持多种编程语言,如:Python、C

2、+Hadoop的起源lHadoop是Google的集群系统的开源实现Google集群系统:GFS(Google File System)、MapReduce、BigTableHadoop主要由HDFS(Hadoop Distributed File System Hadoop分布式文件系统)、MapReducelHadoop的初衷是为解决 Nutch 的海量数据爬取和存储的需要lHadoop于2005年秋天作为 Lucene的子项目Nutch的一部分正式引入Apache基金会。l名称起源:Doug Cutting儿子的黄色大象玩具的名字l目前最新稳定版本2.6.0什么是大数据数据集主要特点Vo

3、lume:数量量从TB到PB级别Variety:数据类型复杂,超过80%的数据是非结构化的Velocity:数据量在持续增加(两位数的年增长率)Value:巨大的数据价值其他特征数据来自大量源,需要做相关性分析需要实时或者准实时的流式采集,有些应用90%写vs.10%读数据需要长时间存储,非热点数据也会被随机访问什么是大数据什么是大数据某比萨店的电话铃响了,客服人员拿起电话。客服:XXX比萨店。您好,请问有什么需要我为您服务?顾客:你好,我想要一份客服:先生,烦请先把您的会员卡号告诉我。顾客:16846146*。客服:陈先生,您好!您是住在泉州路一号12楼120 x室,请问您想要点什么?顾客:

4、我想要一个海鲜比萨 客服:陈先生,海鲜比萨不适合您。顾客:为什么?客服:根据您的医疗记录,你的血压和胆固醇都偏高。顾客:那你们有什么可以推荐的?客服:您可以试试我们的低脂健康比萨。顾客:你怎么知道我会喜欢吃这种的?客服:您上星期一在中央图书馆借了一本低脂健康食谱。顾客:好。那我要一个家庭特大号比萨,要付多少钱?客服:99元,这个足够您一家六口吃了。但您母亲应该少吃,她上个月刚刚做了心脏搭桥手术,还处在恢复期。顾客:那可以刷卡吗?客服:陈先生,对不起。请您付现款,因为您的信用卡已经刷爆了,您现在还欠银行4807元,而且还不包括房贷利息。顾客:那我先去附近的提款机提款。客服:陈先生,根据您的记录,

5、您已经超过今日提款限额。顾客:算了,你们直接把比萨送我家吧,家里有现金。你们多久会送到?客服:大约30分钟。如果您不想等,可以自己骑车来。顾客:为什么?客服:根据我们全球定位系统的车辆行驶自动跟踪系统记录。您登记有一辆车号为SB-748的摩托车,而目前您正在解放路东段华联商场右侧骑着这辆摩托车。顾客当即晕倒大数据VS传统数据大数据处理流程101010010101010101111010100101010101011101011010100101010101011101011010100101010101011110101001010101010111非结构化数据结构化数据实时流数据其它数据 A

6、PITextBig Data Store and AnalyticsETL0101101010010101010101110101101010010101010101111010100101010101011101011010100101010101011101011010100101010101011110101001010101010111Hadoop生态圈主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势HDFS-分布式文件系统u设计目标错误检测和快速自动恢复硬件故障是常态而非异

7、常为流式数据访问优化针对支持大数据集单个文件大小有数GB或者TB可提供高聚合带宽访问 可能够扩展至数千个节点简化“一致性”模型一次写入、多次读,写入过程可能并发移动“计算”比移动“数据”更便宜u主要特点使用低成本存储和服务器构建存放PB级别的海量数据高可扩展性,实际生产环境扩展至4000个节点高可靠性和容错性,数据自动复制,可自我修复高带宽,高并发访问,对于延迟不敏感数据分布与复制u数据块:文件被划分为固定大小的数据块进行存储数据块缺省为64M,远大于一般文件系统数据块大小减少元数据的量有利于顺序读写(在磁盘上顺序存放)可靠性:数据通过副本的方式保存在多个数据节点上默认3个副本副本选择会考虑机

8、架信息以防止整个机架同时掉电u系统设计优化:用单个管理节点来保存文件系统元数据和管理/协调数据缓存:DataNode没有数据缓存由于文件的访问是扫描式的,不具有局部性访问方式读、写、文件改名、删除等文件内容不允许覆盖更新提供一个特殊的访问接口:追加appendHDFS基本设计HDFS体系结构中心目录服务器(NameNode)管理大量数据服务器(DataNode)NameNode 管理元数据(文件目录树,文件-块映射,块-数据服务器映射表,etc.)DataNode 负责存储数据、以及响应数据读写请求客户端与NameNode交互进行文件创建/删除/寻址等操作,之后直接与DataNodes交互进行

9、文件I/OHDFS写文件流程HDFS读文件流程什么是MapReduce编程模型?lMap(映射):对一些独立元素组成的列表的每一个元素进行指定的操作,可以高度并行。lReduce(化简):对一个列表的元素进行合并。l一个简单的MapReduce程序只需要指定map()、reduce()、输入和输出,剩下的事由框架帮你搞定。MapReduce计算框架为离线数据分析而设计,基本上是个利用数据并行性进行分布运算而后汇总结果的计算框架分析问题能够被并行化,且输入数据集可以被切分一个Map函数,在第一阶段计算对 一个Reduce函数,在第二阶段用于汇总Map函数的结果MapReduce运行机制MapRe

10、duceMapReduce原理原理MapReduceMapReduce实例分析实例分析主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势Hadoop YARN产生背景 直接源于直接源于MRv1在几个方面在几个方面的的缺陷缺陷 扩扩展展性性受限受限 单单点故障点故障 难难以支以支持持MR之之外的外的计计算算 多多计计算框架各自算框架各自为为战战,数据共享困,数据共享困难难 MR:离离线线计计算算框架框架 Storm:实实时时计计算框架算框架 Spark:内存:内存计计算算框架框架Hado

11、op 1.0和和2.0Hadoop 2.0由由HDFS、MapReduce和和YARN三个分支构三个分支构成成;HDFS:NN Federation、HA;MapReduce:运行运行在在YARN上上的的MR;YARN:资资源管理系源管理系统统主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势Hadoop YARN基本架构Hadoop YARN各模块组成ResourceManager 处处理客理客户户端端请请求求启启动动/监监控控ApplicationMaster监监控控NodeMan

12、ager 资资源分配与源分配与调调度度NodeManager 单单个个节节点上的点上的资资源管理源管理处处理来理来自自ResourceManager的命令的命令处处理来理来自自ApplicationMaster的命令的命令ApplicationMaster 数据切分数据切分 为为应应用程序申用程序申请资请资源源,并分配,并分配给给内部任内部任务务 任任务监务监控与容控与容错错Hadoop YARN运行流程分析Node ManagerNode ManagerNodeManagerResourceManagerApplication MasterClientClientClientTaskCont

13、ainerContainerTaskTaskContainerHadoop YARN容错ResourceManager基基于于ZooKeeper实现实现HA。NodeManager 失失败败后后,RM将失将失败败任任务务告告诉对应诉对应的的AM;AM决定如何决定如何处处理失理失败败的任的任务务。ApplicationMaster 失失败败后后,由由RM负责负责重重启启;AM需需处处理内部任理内部任务务的容的容错问错问题题;RMAppMaster会保存已会保存已经经运行完成运行完成的的Task,重启后无需重新运重启后无需重新运行行。Hadoop YARN调度框架 双双层调层调度框架度框架 RM将

14、将资资源分配源分配给给AM AM将将资资源源进进一步分配一步分配给给各各个个Task 基于基于资资源源预预留的留的调调度度策策略略 资资源不源不够够时时,会,会为为Task预预留留,直到,直到资资源充足源充足与与“all or nothing”策略不策略不同同(Apache Mesos)Hadoop YARN资源调度器 多多类类型型资资源源调调度度采用采用DRF算法(算法(论论文:文:“Dominant Resource Fairness:FairAllocation of Multiple Resource Types”)目前支持目前支持CPU和内存两种和内存两种资资源源 提供多种提供多种资

15、资源源调调度器度器FIFOFair SchedulerCapacity Scheduler 多租多租户资户资源源调调度器度器 支持支持资资源按比例分配源按比例分配 支持支持层级队层级队列划分方式列划分方式 支持支持资资源源抢抢占占Hadoop YARN资源隔离方案 支持内存支持内存和和CPU两种两种资资源隔离源隔离 内存是一内存是一种种“决定生死决定生死”的的资资源源 CPU是一是一种种“影响快影响快慢慢”的的资资源源 内存隔离内存隔离 基于基于线线程程监监控的方案控的方案基基于于Cgroups的方案的方案CPU隔离隔离 默默认认不不对对CPU资资源源进进行隔离行隔离基于基于Cgroups的方

16、案的方案Hadoop YARN资源调度语义 支持的支持的语义语义 请请求某个特求某个特定定节节点点/机架上的特定机架上的特定资资源量源量 将某些将某些节节点加入(或移除)黑名点加入(或移除)黑名单单,不再,不再为为自己分配自己分配这这些些节节点上点上的的资资源源 请请求求归还归还某某些些资资源源 不支持的不支持的语义语义 请请求任求任意意节节点点/机机架架上的特定上的特定资资源源量量 请请求一求一组组或几或几组组符合某种特符合某种特质质的的资资源源 超超细细粒粒度度资资源源动态调动态调整整Container资资源源主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 3

17、4Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势应用程序的运行模型MapinputoutputMapinputReduceoutputStage1inputoutputStage2Stage3Stage4Stage 1inputoutputStage2Stage3StageNYARN应用程序类型 长应长应用程用程序和短序和短应应用程序用程序 长应长应用程序用程序Service、HTTP Server等 短短应应用程序用程序MR job、Spark Job等以YARN为核心的生态系统运行在YARN上的计算框架离离线计线计算框架算框架:MapReduceDAG计计算

18、框架算框架:Tez流式流式计计算框架算框架:Storm内存内存计计算框架算框架:Spark图计图计算框架算框架:Giraph、GraphLib离线计算框架MapReduce 将将计计算算过过程分程分为为两两个个阶阶段段,Map和和Reduce Map 阶段并行处理输入数据Reduce阶段对Map结果进行汇总Shuffle连连接接Map和和Reduce两个两个阶阶段段 Map Task将数据写到本地磁盘Reduce Task从每个Map Task上读取一份数据 仅仅适合离适合离线线批批处处理理 具有很好的容错性和扩展性 适合简单的批处理任务 缺点明缺点明显显 启动开销大、过多使用磁盘导致效率低下

19、等MapReduce On YARN25MR App MstrNode ManagerMap TaskNode Manager66Reduce TaskClient1Container245Map Task777ContainerContainerContainerResourceManager3,86Applications ManagerResource SchedulerDAG计算框架Tez 多个作多个作业业之之间间存存在在数数据据依依赖赖关关系系,并并形形成成一一个个依依赖赖关系关系有有 向向图图(Directed Acyclic Graph),),该图该图的的计计算称算称为为 “DA

20、G计计算算”Apache Tez:基:基于于YARN的的DAG计计算框架算框架 运运行行在在YARN之上之上,充分利充分利用用YARN的的资资源管理和容源管理和容错错等功等功能能;提供了丰富的数据提供了丰富的数据流流(dataflow)API;扩扩展性良好展性良好的的“Input-Processor-Output”运行运行时时模型模型;动态动态生成物理数据流关生成物理数据流关系系。Phase 1Phase 2Phase 3Phase 4Phase 5MapReduceMapReduceReduceDAG计算框架TezHDFSMap1Reduce1HDFSHDFSMap2Reduce2HDFSW

21、ordCountTop KHDFSMap1Reduce12HDFSWordCount+Top KReduce2Job1Job2DAG JobUsing TezJob1Job2Job4Single JobUsingTez On YARNDAG App MstrNodeManager25Vertex-A TaskNode ManagerVertex-A TaskClient1Container245Vertex-A Task777ContainerContainerContainerResourceManager3,866Applications ManagerResource Scheduler

22、Tez优化技术ApplicationMaster缓缓冲池冲池作业提交到AMPoolServer服务上预启动若干个ApplicationMaster,形成一个ApplicationMaster缓冲池预预先启先启动动ContainerApplicationMaster启动时可以预先启动若干个ContainerContainer重用重用任务运行完成后,ApplicationMaster不会马上注销它使用的Container,而是将它重新分配给其他未运行的任务Tez应用场景 直接直接编编写写应应用程序用程序 Tez提供了一套通用编程接口 适合编写有依赖关系的作业优优化化Pig、Hive等引擎等引擎下一

23、代Hive:Stinger 好处1:避免查询语句转换成过多的MapReduce作业后 产生大量不必要的网络和磁盘IO 好处2:更加智能的任务处理引擎流式计算Storm 流流式式(Streaming)计计算算,是是指指被被处处理理的的数数据据 像像流流水水一一样样不不断断流流入入系系统统,而而系系统统需需要要针针对对每每条条 数数据据进进行行实实时时处处理理和和计计算算,并并永永不不停停止止(直直到到用用 户显户显式式杀杀死死进进程程);传统传统做法:做法:由消由消息息队队列和消息列和消息处处理者理者组组成成的的实时实时行行实实时时计计算算;化 性现现。处处理网理网络络进进缺乏自动缺乏健壮伸缩性

24、差Storm出出引引自自:2013中国大数据技中国大数据技术术大会大会 肖肖康康:“Storm在在实实时时网网络络攻攻击检测击检测和分析的和分析的应应用用与与改改进进”,PPT:http:/ Tasks,topology 1Blot-A Tasks,topology1SupervisorExecutorExecutorWorkerExecutorExecutorWorkerSupervisorExecutorExecutorWorkerExecutorExecutorWorkerSpout Tasks,topology 1Blot-B Tasks,topology1Spout Tasks,to

25、pology 2Blot-1 Tasks,topology 2Blot-C Tasks,topology1Blot-B Tasks,topology1Blot-2 Tasks,topology 2Blot-1 Tasks,topology 2Blot-2 Tasks,topology 2Blot-2 Tasks,topology 2流式计算框架StormTaskTaskTaskTaskTaskTaskTaskTaskTaskSpoutBlot-ABlot-BBlot-CStream GroupingStream GroupingTopologyHadoop MapReduce(MRv1)Sto

26、rm系系统统服服务务JobTrackerNimbusTaskTrackerSupervisorChildWorker应应用用程序名称程序名称JobTopology编编程程模型模型Map/ReduceSpout/BlotShuffleStream GroupingStorm On YARNResource ManagerNode ManagerNode ManagerStorm SupervisiorNode ManagerYARN-Storm ClientYARN-MPIClientYARN-MapReducee ClientStorm SubmissionResource RequestSt

27、orm Application Master Storm SupervisiorZookeeperNode ManagerMR AppMstrContainerMap TaskContainerStorm ClientStorm ClientNimbusWeb UI内存计算框架Spark 克服克服MapReduce在迭代在迭代式式计计算和算和交交互互式式计计算方算方面面的的不足不足;引入引入RDD(Resilient Distributed Datasets)数据表)数据表示示模模型型;RDD是是集合集合,一一个个有有容容错错机制机制,可以被并可以被并能能够够被被缓缓存存到到内存或内存或磁磁盘

28、盘上上行行操作的数据操作的数据。引自引自:“基于基于Spark on Yarn的淘宝数据的淘宝数据挖掘平挖掘平台台”,PPT:http:/ On YARNResource ManagerNode ManagerNode ManagerStandaloneExecutorBackenddNode ManagerYARN-Spark ClientYARN-MPIClientYARN-MapReducee ClientSpark SubmissionResource RequestClusterSchedulerSpark Application MasterStandaloneExecutorBa

29、ckendNode ManagerMR App MstrContainerMap TaskContainerWeb UISpark生态系统主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势资源管理系统带来的好处 提高集群提高集群资资源源利用率利用率 服服务务自自动动化化部署部署YARN(资源管理系统)HDFS2(分布式存储系统)zookeeperzookeeperzookeepersoftwarecodebaseInstallerApp Masterbin/hadoop install

30、 hbase-version 0.95.0-slaves 10Storm|0.7.0|0.92.0|0.8.0|0.94.0 MYSQL|0.95.0|5.5.25|5.6.12HBase资源管理系统发展趋势Scheduling logicScheduling logicScheduling logicScheduling logicsubsetfull stateCluster MachinesNo concurrencypessimistic concurrency(offers)optimistic concurrency(transactions)集中式调度双层调度共享状态调度引自:G

31、oogle论文“Omega:flexible,scalable schedulers for large compute clusters”Scheduling logicYARN自身的完善 调调度框架度框架的完的完善善:YARN-896支持更多的资源类型(网络、磁盘等)支持更多的调度语义 长长作作业业的的在在线线升升级级Storm在线升级等Container资源动态调整:YARN-1197 容容错错机制机制ResourceManager自身容错NodeManager宕掉,任务不受影响ApplicationMaster个性化容错以YARN为核心的生态系统YARN使得使得Hadoop生生态态系系统统更加更加强强大大吸纳其他开源计算框架,如Storm、Spark等变为集群管理者YARN(资源管理系统)MapReduceTezHBaseStormGiraphSparkOpenMPIHDFS2(分布式存储系统)QA

展开阅读全文
相似文档                                   自信AI助手自信AI助手
猜你喜欢                                   自信AI导航自信AI导航
搜索标签

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2024 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服