Hadoop2.0架构设计与原理

上传人:豆** 文档编号:128514811 上传时间:2022-08-01 格式:PPT 页数:60 大小:4.65MB
收藏 版权申诉 举报 下载
Hadoop2.0架构设计与原理_第1页
第1页 / 共60页
Hadoop2.0架构设计与原理_第2页
第2页 / 共60页
Hadoop2.0架构设计与原理_第3页
第3页 / 共60页
资源描述:

《Hadoop2.0架构设计与原理》由会员分享,可在线阅读,更多相关《Hadoop2.0架构设计与原理(60页珍藏版)》请在装配图网上搜索。

1、主要内容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+Hadoop的起源lHadoop是Google的

2、集群系统的开源实现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什么是大数据 数据集主要特点 Volume:数量量从TB到PB级别 Variet

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

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

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

6、d AnalyticsETL0101101010010101010101110101101010010101010101111010100101010101011101011010100101010101011101011010100101010101011110101001010101010111Hadoop生态圈主要内容Hadoop介绍1Hadoop原理2Hadoop YARN产生的背景 34Hadoop YARN基本架构5运行在YARN上的基本框架6YARN 发展趋势HDFS-分布式文件系统u设计目标错误检测和快速自动恢复硬件故障是常态而非异常为流式数据访问优化针对支持大数据集单个文件大

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

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

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

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

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

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

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

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

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

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

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

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

19、ManagerMap TaskNode Manager66Reduce TaskClient1Container245Map Task777ContainerContainerContainerResourceManager3,86Applications ManagerResource SchedulerDAG计算框架Tez 多个作业之间存在数据依赖关系,并形成一个依赖关系有多个作业之间存在数据依赖关系,并形成一个依赖关系有 向图(向图(Directed Acyclic Graph),该图的计算称为),该图的计算称为 “DAG计算计算”Apache Tez:基于:基于YARN的的DAG计算框

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

21、FSWordCount+Top KReduce2Job1Job2DAG JobUsing TezJob1Job2Job4Single JobUsingTez On YARNDAG App MstrNodeManager25Vertex-A TaskNode ManagerVertex-A TaskClient1Container245Vertex-A Task777ContainerContainerContainerResourceManager3,866Applications ManagerResource SchedulerTez优化技术ApplicationMaster缓冲池作业提交

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

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

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

25、y 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)Storm系统服务系统服务JobTrackerNimbusTa

26、skTrackerSupervisorChildWorker应用程序名称应用程序名称JobTopology编程模型编程模型Map/ReduceSpout/BlotShuffleStream GroupingStorm On YARNResource ManagerNode ManagerNode ManagerStorm SupervisiorNode ManagerYARN-Storm ClientYARN-MPIClientYARN-MapReducee ClientStorm SubmissionResource RequestStorm Application Master Storm

27、 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 MasterStandaloneExecutorBackendNode ManagerMR App

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

30、laves 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)集中式调度双层调度共享状态调度引自:Google论文“Omega:flexible,

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

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!