Hadoop体系架构概述-PPT.ppt

上传人:教**** 文档编号:92780698 上传时间:2023-06-13 格式:PPT 页数:23 大小:304KB
返回 下载 相关 举报
Hadoop体系架构概述-PPT.ppt_第1页
第1页 / 共23页
Hadoop体系架构概述-PPT.ppt_第2页
第2页 / 共23页
点击查看更多>>
资源描述

《Hadoop体系架构概述-PPT.ppt》由会员分享,可在线阅读,更多相关《Hadoop体系架构概述-PPT.ppt(23页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、Hadoop体系架构概述体系架构概述补充上比较完美的参考资料1HadoopHadoopHadoopHadoop体系架构体系架构体系架构体系架构HDFSHDFSHDFSHDFS简介简介简介简介Map/ReduceMap/Reduce模型模型模型模型分布式列式数据分布式列式数据分布式列式数据分布式列式数据库库库库HbaseHbase2HadoopHadoop概述概述基于Apache基金会下的一个开源项目,致力于开发一个可靠的、大规模的分布式计算框架 用户可采用简单的计算模型在计算机集群下对大规模的数据进行分布式处理 设计理念之一是扩展单一的服务器为成千上万机器的集群,且集群中每一个机器同时提供本地

2、计算力和存储力Hadoop框架是在应用层检测和处理硬件失效问题,而不是依赖于硬件自身来维持高可用性。在Hadoop框架集群中硬件失效被认为是一种常态,集群的高可用性服务是建立在整个集群之上的3 分布式文件系统(Hadoop Distributed File System,HDFS)并行计算模型(Map/Reduce)列式数据库(HBase)数据仓库(Hive)数据分析语言(Pig)数据格式转化工具(Sqoop)协同工作系统(Zookeeper)数据序列化系统(Avro)HDFS(Hadoop Distributed File System)Map/Reduce(Job Scheduling/E

3、xecution System)Hbase(Column Database)Pig(Data Flow)Hive(SQL)SqoopETL ToolsBI ReportingRDBMSAvroSerialization)Zookeeper(Coordination)Hadoop整体框架整体框架4HadoopHadoop整体框架下特点整体框架下特点Hadoop主要在多节点集群环境下以数据存储为基础最大限度兼容结构化数据格式以数据处理为目的且其数据操作技术多样化5HadoopHadoopHadoopHadoop体系架构体系架构体系架构体系架构 HDFSHDFSHDFSHDFS简介简介简介简介Map

4、/ReduceMap/Reduce模型模型模型模型分布式列式数据分布式列式数据分布式列式数据分布式列式数据库库库库HbaseHbase6HDFSHDFS概述概述-基本特征基本特征基于商用硬件环境HDFS具有高容错性,并且被部署在廉价的硬件之上HDFS向应用程序提供高的数据吞吐访问,适合于需要处理大规模海量数据集的应用HDFS遵循部分POSIX协议要求,可以确保应用程序以流的方式访问文件系统数据7HDFSHDFS的对现实应用环境的假设及其目标的对现实应用环境的假设及其目标硬件失效流式数据访问海量数据集追加写入及文件同步“移动计算比移动数据的代价小”跨异构硬件和软件平台的可移植性8大家有疑问的,可

5、以询问和交流大家有疑问的,可以询问和交流可以互相讨论下,但要小声点可以互相讨论下,但要小声点可以互相讨论下,但要小声点可以互相讨论下,但要小声点9HDFSHDFS架构架构主从(Master/Slave)体系结构只含有一个NameNode主服务节点这个节点管理文件系统中的命名空间和调度客服端对文件的访问通常一个机器就是一个DataNode数据节点,DataNode管理本节点上数据的存储在HDFS内部,一个文件被分割为一个或多个数据块,并且这些数据块被存储在一批DataNode中。NameNode执行文件系统中命名空间的操作(打开、关闭、重命名文件和目录),NameNode需要执行数据块到Data

6、Node映射的决策DataNode负责响应来自客户端的文件读写要求,也要负责执行来自NameNode的关于数据块创建、删除和冗余存储的指令ClientMetaData opsWriteNameNodeMetaData(Name,replicas,)ClientDataNodesDataNodesBlock opsReadBlockssReplicationNameNode同DataNode都是可以架设在普通商品机上,一个典型的HDFS集群中部署一个专用机做为NameNode,其余的机器部署为DataNode。虽然,这个体系结构并不排除把一个机器做为多个DataNode节点,但是这样的情况在实际

7、部署中很少发生。单NameNode结构极大的简化了集群的系统结构,NameNode主管并且存储所有的HDFS的元数据(MetaData),系统中用户数据绝不会流过NameNode节点。10HadoopHadoopHadoopHadoop体系架构体系架构体系架构体系架构HDFSHDFSHDFSHDFS简介简介简介简介Map/ReduceMap/Reduce模型模型模型模型分布式列式数据分布式列式数据分布式列式数据分布式列式数据库库库库HbaseHbase11Map/ReduceMap/Reduce简介简介一种用于在大型商用硬件集群中(成千上万的节点)对海量数据(多个兆兆字节数据集)实施可靠的、高

8、容错的并行计算的软件系统一个最先由Google提出的分布式计算软件构架基本原理 将一个复杂的问题,分成若干个简单的子问题进行解决。然后,对子问题的结果进行合并,得到原有问题的解12Map/ReduceMap/Reduce概念概念Map和Reduce是编程语言中的概念,都是处理数据集合的函数Map在处理数据序列的过程中只处理当前的数据信息,不需要跟之前处理的状态信息交互主结点读入输入数据,把它分成可以用相同方法解决的小数据块,然后把这些小数据块分发到不同的工作节点上,每一个工作节点循环做同样的事,这就形成了一个树行结构,而每一个叶子节点来处理每一个具体的小数据块,再把这些处理结果返回给父节点Re

9、duce在处理过程中却依赖之前处理的结果,同时生成的结果也被后续的处理使用。结点得到所有子节点的处理结果,然后把所有结果组合并且返回到输出一个Map/Reduce任务会把一个输入数据集分割为独立的数据块,然后Map任务会以完全并行的方式处理这些数据块。Map/Reduce系统自动对Map任务的输出分类,再把这些分类结果做为Reduce任务的输入。无论是任务的输入还是输出都会被存储在文件系统中。Map/Reduce系统关注任务调度、任务监测和重新执行失败的任务13Map/ReduceMap/Reduce模型模型计算节点和存储节点的一致性。允许Hadoop框架有效的调度任务在那些数据已经准备好了的

10、节点上,好处是整个集群中总带宽非常的高特点是可以用Map和Reduce方法来处理分布式计算问题时,尽可能的实现数据处理的本地化,降低由数据移动而产生的代价。每一个Map操作都是相对独立的,所有的Maps都是并行运行的,虽然实践中会受到数据源和CPU个数的影响。同样的,用一个Reduce集合来执行Reduce操作,所有带有相同key的Map输出会聚集到同一个Reduce。能够处理一般服务器所不能处理的大数据量处理问题Map/Reduce系统由单一的JobTracker主节点和若干个TaskTracker从节点组成,其中每一个集群节点对应一个TaskTracker节点。主节点负责调度任务的各个组成

11、任务到从节点上,监控并且重新执行失败的组成任务;从节点执行主节点安排的组成任务Map/Reduce的Map和Reduce过程都定义了键值对()的数据结构,即系统视任务的输入数据为键值对集合,并且产生键值对结合做为任务的输出。一次任务的输入输出格式:(input)-map-combine-reduce-(output)14 一次Map/Reduce任务过程。用户提交任务给JobTracer,JobTracer把对应的用户程序中的Map操作和Reduce操作映射至TaskTracer节点中;输入模块负责把输入数据分成小数据块,然后把它们传给Map节点;Map节点得到每一个key/value对,处理

12、后产生一个或多个key/value对,然后写入文件;Reduce节点获取临时文件中的数据,对带有相同key的数据进行迭代计算,然后把终结果写入文件。6 write5 remotewrite4 localwrite3 readUserProgramTaskTracerTaskTracerTaskTracerTaskTracerTaskTracerChunk1Chunk2Chunkn1 fork1 fork2assignmapOutputOutputInputfiles1 fork2assignreduceJobTracerMapphaseIntermediate files(on local d

13、isk)ReducephaseOutputfilesMap/Reduce处理过程处理过程15Map/ReduceMap/Reduce优缺点优缺点Map/Reduce通过工作状态的返回有效处理了单点失效的问题Map/Reduce是隶属于大粒度的并行计算模式,并行节点间在Map阶段中和Reduce阶段中无法通信,也并非是一种万能的数据处理模型16HadoopHadoopHadoopHadoop体系架构体系架构体系架构体系架构HDFSHDFSHDFSHDFS简介简介简介简介Map/ReduceMap/Reduce模型模型模型模型分布式列式数据分布式列式数据分布式列式数据分布式列式数据库库库库Hbas

14、eHbase17HbaseHbase简介简介可提供随机的、实时的大数据读写访问目标是在商用硬件上存储非常大的表数十亿的行数百万的列开源的、分布式的、版本化的、面向列的存储模型对Google公司Bigtable系统的开源模仿,建立在Hadoop和HDFS之上提供类Bigtable的存储力18HbaseHbase数据模型数据模型按预先定义好的列族(Column family)结构来存储数据,即每一条数据有一个key以及若干个列属性值组成,每列的数据都有自己的版本信息数据是按列进行有序存储的,不同于关系型数据库中按行存储两种方式的数据操作,通过对有序key值进行扫描查询,获取value值,或者借助强

15、大的Hadoop来进行Map/Reduce查询采用了强一致性的读写保证,数据会在多个不同的域(region)中进行保存。列族可以包含无限多个数据版本,每个版本可以有自己的TTL(Time to Live,生命周期)通过行级锁来保证写操作的原子性,但是不支持多行写操作的事务性。数据扫描操作不保证一致性19HBaseHBase下表的逻辑视图下表的逻辑视图行键(Row key)时间戳(Time stamp)列族(Column family)列(Column)Row keyTime stampColumn family AColumn akeytnt1value1在创建一张表时,必须定义行键名及所需列

16、族的列族名,理论上一张表在创建时可以无限制地定义列族个数,而时间戳会由系统自动生成。列无需在创建表时定义,可以在使用时随意定义使用,一个列族下同样可以无限制的定义列的个数。虽然,HBase中可以任意的定义列族个数及附属列的个数,但是只需能够保证任意一列不为空时,该行即为有效行。20HBaseHBase下表的物理视图下表的物理视图 在HBase中采用的稀疏存储,物理存储过程中细化到一个单元(Cell)。在逻辑视图中,任意一行不会空的每一列都被称作为一个单元。单元联同行键、时间戳、列族名、列名做为完整的一行存储到文件系统中,并且这个存储过程中会自动排序,先在各行键间以字母升序排列,再在同行键间以时

17、间戳降序排列。Row keyTime stampColumn familyColumnValuekeytnColumn family Akeyt1Column family AColumn avalue121表创建的初始阶段其中只含有一个Region,随着表中数据的量的不断增多,一个Region会分裂为两个Region,然后不断重复上述过程,并且Region会被存储到HDFS中不同的DataNode上。Region包含有一个或多个的Store,其数量增长过程同表中的Region数量增长过程一致Store中分为两个部分:第一个部分是Memstore,一个Store中只包含一个Memstore,并

18、且Memstore存储在内存空间中;第二个部分是Storefile,此部分由Memstore写入硬盘而得。随着Memstore写入硬盘的次数增多,Storefile的数量也会增加,当文件个数增加到一定量时,系统会自动对Storefile文件进行合并。合并过程中主要完成以下几个工作:1.具有相同行键的行存放在一个文件中;2.扔掉被标志为删除的行;3.扔掉时间戳过期的行,完成更新操作。随着合并操作的频繁执行Storefile会变得很大,达到一定文件大小时自动分裂文件,贴合HDFS中对一个块数据大小的定义HBase的一张表中的多个列族(Column Family),在物理存储上一个列族对应一个文件夹

19、,一个文件夹中可包含若干个Hfile文件。Hfile是Storefile的底层文件格式,StoreFile就是对Hfile做了轻量级包装MemstoreStorefileStorefile单一键值TableRegionStore包含零个或多个包含一个或多个包含一个或多个包含一个达到一定阈值时写入硬盘文件个数达到一定阈值时合并文件大小达到一定阈值时分裂Hbase物理存储过程物理存储过程22记录(Record)数据块中以键值对形式存放的用户数据,一条记录保存一个键值对或者说保存一个单元的数据元数据块其主要作用是判断一个键值是都在当前Hfile文件中文件信息(FileInfo)中保存了与该HFile

20、相关的一些信息,其中有系统保留的一些固定的值,也可以保存用户自定义的一些值数据块索引(Data Block Index)保存的是每一个数据块在HFile文件中的位置、大小信息以及每个块的第一个单元的键值元数据索引(Meta Block Index)的格式与数据库索引相同,元数据块索引保存的是每一个元数据在HFile文件中的位置、大小信息以及每个元数据的键值文件尾(Fixed file trailer)主要保存了该Hfile的一些基本信息,其大小固定,主要是可以根据它查找到Fileinfo,Block Index的起始位置Hfile的文件结构的文件结构Data Block 1Data Block NMeta Block 1Meta Block NFileinfoData Block IndexMeta Block IndexFixed file trailer数据块(Data block)元数据块(Meta block)文件组成23

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 教案示例

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

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁