




已阅读5页,还剩81页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
Hadoop综述,1,2020/4/27,主要内容,2,第一篇HDFS分布式文件系统第二篇MapReduce第三篇Hbase简单介绍,2,2020/4/27,第一篇HDFS,3,一:TheDesignofHDFS二:HDFSConcepts三:应用程序示例四:DataFlow,3,2020/4/27,第二篇MapReduce,4,一:MapReduce基础二:MapReduce数据流三:MapReduce工作原理,4,2020/4/27,第三篇Hbase简单介绍,5,一:简介二:数据模型三:行、列、时间戳、API,5,2020/4/27,第一篇HDFS分布式文件系统,6,2020/4/27,1TheDesignofHDFS,Verylargefiles大数据集合为目标数以千万计的文件典型文件大小一般都在千兆至T字节Streamingdataaccesswrite-one-read-many访问模型文件创建、写,关闭之后不需要改变简化数据一致性适合MapReduce框架,或者webcrawlerCommodityhardware错误检测和快速、自动的恢复是HDFS的核心架构目标,7,2020/4/27,1TheDesignofHDFS,Low-latencydataaccess流式读为主比之关注数据访问的低延迟,更关键在于数据访问的高吞吐量arbitraryfilemodifications严格要求在任何时候只有一个writer。文件尾在异构的软硬件平台间的可移植性移动计算Java编写,8,2020/4/27,2HDFSConcepts,blocksNamenodesandDatanodesTheCommand-LineInterface通信接口,9,2020/4/27,2.1HDFSConcepts-blocks,filesinHDFSarebrokenintoblock-sizedchunks(64MBbydefault)减少元数据的量有利于顺序读写(在磁盘上数据顺序存放)副本的默认数目是3afilecanbelargerthananysinglediskinthenetwork.makingtheunitofabstractionablockratherthanafilesimplifiesthestoragesubsystem.,10,2020/4/27,2.2HDFSConcepts-NamenodesandDatanodes,BasicmodelNamenodeDataNode心跳机制,11,2020/4/27,2.2.1HDFSConcepts-NamenodesandDatanodes-Basicmodel,Basicmodel:Master/Slaves/ClientCorrespondingimplementation:MasterNameNodeSlavesDataNodesClientDFSClient,12,2020/4/27,2.2.1HDFSConcepts-NamenodesandDatanodes-Basicmodel,查看块信息hadoopfsckfilesblocks部分运行结果,13,2020/4/27,2.2.2HDFSConcepts-NamenodesandDatanodes-NameNode,managesthefilesystemnamespace元数据信息包括:文件信息,根目录hdfs:/master:9000/每一个文件对应的文件块的信息每一个文件块在DataNode的信息persistentstateofthefilesystemmetadata.NamenodefoldersstructureNamenodenamespace映像文件及修改日志客户端对文件的访问,14,2020/4/27,HDFSConcepts-NamenodesandDatanodes-NameNode-managesthefilesystemnamespace,将所有的文件和文件夹的元数据保存在一个文件系统树中。在硬盘上保存成以下文件:命名空间镜像(namespaceimage)修改日志(editlog)心跳信号传递信息(并不存储在硬盘):一个文件包括哪些数据块,分布在哪些数据节点上。系统启动的时候从Datanode收集而成的。Datanode在Namenode的指挥下进行block的创建、删除和复制。,15,2020/4/27,HDFSConcepts-NamenodesandDatanodes-NameNode-persistentstateofthefilesystemmetadata,对于任何对文件元数据产生修改的操作,Namenode都使用一个称为Editlog的事务日志记录下来。例如,在HDFS中创建一个文件(打开、关闭、重命名文件和目录),Namenode就会在Editlog中插入一条记录来表示;同样,修改文件的replication因子也将往Editlog插入一条记录。整个文件系统的namespace,包括block到文件的映射、文件的属性,都存储在称为FsImage的文件中,这个文件也是放在Namenode所在系统的文件系统上,16,2020/4/27,HDFSConcepts-NamenodesandDatanodes-NameNode-persistentstateofthefilesystemmetadata,块进行复制的形式放置,按照块的方式随机选择存储节点。a副本的默认数目是3,17,2020/4/27,HDFSConcepts-NamenodesandDatanodes-NameNode-Namenodefoldersstructure,namespaceID=1232737062cTime=0storageType=NAME_NODElayoutVersion=-18,VERSION文件是javaproperties文件,保存了HDFS的版本号。layoutVersion是一个负整数,保存了HDFS的持续化在硬盘上的数据结构的格式版本号。namespaceID是文件系统的唯一标识符,是在文件系统初次格式化时生成的。cTime此处为0storageType表示此文件夹中保存的是元数据节点的数据结构。,18,2020/4/27,HDFSConcepts-NamenodesandDatanodes-NameNode-Namenode-Namenode文件系统命名空间映像文件及修改日志,客户端操作(打开、关闭、重命名文件和目录)NameNode将对文件系统的改动追加保存到本地文件系统上的一个日志文件(edits)NameNode启动从映像文件(fsimage)中读取HDFS的状态接着应用日志文件中的edits操作新的HDFS状态写入(fsimage)中使用一个空的edits文件开始正常操作。写操作成功之前,修改日志都会同步(sync)到文件系统。fsimage命名空间映像文件,是内存中的元数据在硬盘上的checkpointNameNode只有在启动阶段合并fsimage和edits,日志文件会变大,19,2020/4/27,2.2.3HDFSConcepts-NamenodesandDatanodes-DataNodes,文件存储的基本单元保存Block的Meta-data周期性地将所有Block信息发送给NameNode。文件夹结构,blk_保存的是HDFS的数据块,其中保存了具体的二进制数据。blk_.meta保存的是数据块的属性信息:版本信息,类型信息,和checksum目录中数据块到达一定数量,创建子文件夹,20,2020/4/27,2.2.4HDFSConcepts-NamenodesandDatanodes-心跳机制,master启动,开一个ipcserverslave启动每隔3秒向master发送“心跳”状态信息告诉mastermaster通过心跳的返回值,向slave节点传达指令周期性接收“心跳”和BlockreportDatanode上所有block组成列表,21,2020/4/27,2.3HDFSConcepts-NamenodesandDatanodes-TheCommand-LineInterface,interactingwithHDFShadoopfsmkdirinputhdfs:/master:9000/user/coole在hdfs:/master:9000/user/coole下新建input目录,22,2020/4/27,2.5HDFSConcepts-NamenodesandDatanodes-通信接口,对通信的对象进行序列化自己的序列化系统。org.apache.hadoop.io中定义可序列化对象,实现了Writable接口,23,2020/4/27,3Hadoop应用程序示例,/在hdfs:/master:9000/user/coole目录下创建文件并写入内容publicclassDFSOperatorpublicstaticvoidmain(Stringargs)Configurationconf=newConfiguration();tryFileSystemfs=FileSystem.get(conf);Patht=newPath(hdfs:/master:9000/user/coole/dfs_operator.txt);FSDataOutputStreamos=fs.create(t,true);inti=0;for(i=0;istring,71,2020/4/27,Hbase数据模型行,每一行都有一个可排序的主键和任意多的列。行关键字可以是任意字符串表用行键即主键排序,通过主键访问表。在一个行关键字下的每一个读写操作都是原子操作有利于同行并发操作举例,在Webtable里,通过反转URL中主机名的方式,可以把同一个域名下的网页组织成连续行。,72,2020/4/27,Hbase数据模型列族,每行列分组形成列族:“:”每张表有一个family集合,固定不变,相当于表结构列族成员有相同前缀。OK:a与OK:b都属于OK列族成员同一列族下存放的所有数据通常都是同一类型列族必须先创建,然后能在其中的列关键字下存放数据,动态增加列限定词任意字符串。比如,Webtable列族是anchor;给列族的每一个列关键字代表一个锚链接物理存储列族成员在文件系统存在一起,(确切)面向列族。这是访问控制的基本单位。,73,2020/4/27,Hbase数据模型时间戳,表中每一个表项都可以包含同一数据的多个版本不同版本的表项内容按时间戳倒序排列,即最新的排在前面。自动进行垃圾清除。用户可以指明只保留表项的最后n个版本在Webtable中,在contents:列中存放确切爬行一个网页的时间戳。如上的垃圾清除机制可以让我们只保留每个网页的最近三个版本。,74,2020/4/27,Hbase数据模型,行名是一个反向URL即n.www。contents列族存放网页内容anchor列族存放引用该网页的锚链接文本。CNN的主页被SportsIllustrater和MY-look的主页引用,因此该行包含了名叫“anchor:”和“anchhor:my.look.ca”的列。列名字的格式是:时间戳每个锚链接只有一个版本,由时间戳标识,如t9,t8;而contents列则有三个版本,分别由时间戳t3,t5,和t6标识。,一个存储Web网页的例子的表的片断,75,2020/4/27,Hbase数据模型概念视图,一个表可以想象成一个大的映射关系,通过主键,或者主键+时间戳,可以定位一行数据,由于是稀疏数据,所以某些列可以是空白的,下面就是数据的概念视图:,76,2020/4/27,Hbase数据模型物理视图,在物理存储上面,它是按照列来保存的,在概念视图上面有些列是空白的,这样的列实际上并不会被存储如果在查询的时候不提供时间戳,返回最新版本,77,2020/4/27,区域(tablet),表横向分不同区域,各区域代表所有行一个子集区域确定:第一行(包含)最后行(不含)+随机标识表初始单个区域-逐渐扩大超过阈值-以行为界分割区域分散在HBase集群上单元Bigtable通过行关键字的字典序来维护数据。动态划分成多个连续行叫做“子表”(tablet)是数据分布和负载均衡的单位。这样一来,读较少的连续行就比较有效率,78,2020/4/27,架构与实现,Hbase由主节点master多个区域服务器regionserver从结点Master分配区域给已注册的区域服务器Regionserver负责0到多个区域,响应客户端读写请求通知master分裂成子区域信息,79,2020/4/27,特性,无真正索引行顺序,无索引膨胀问题,插入操作性能与表大小无关自动分区商用硬件建立在1000-5000节点,RDBMS非常消耗IO?,80,2020/4/27,HbaseAPI,BT的提供了建立和删除表和列族的函数还提供了函数来修改集群,表和列族的元数据,比如说访问权限,81,2020/4/27,HbaseAPI:写入Bigtable.,/OpenthetableTable*T=OpenOrDie(”/bigtable/web/webtable”);/WriteanewanchoranddeleteanoldanchorRowMutationr1(T,“n.www”);r1.Set(”anchor:”,“CNN”);r1.Delete(”anchor:”);Operationop;Appl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 广东外语外贸大学《应用多元统计分析》2024-2025学年第一学期期末试卷
- 2025预防接种测试卷(附答案)
- 2025年公务员考试申论范文与写作指导高分突破
- 湖北汽车工业学院科技学院《移动平台开发技术》2024-2025学年第一学期期末试卷
- 育婴员模考试题与答案
- 2025年初任酒店前台接待员实操模拟题及指南
- 川南幼儿师范高等专科学校《数字营销传播案例解读》2024-2025学年第一学期期末试卷
- 遂宁职业学院《机器人开发》2024-2025学年第一学期期末试卷
- 山东科技大学《幼儿美术创作》2024-2025学年第一学期期末试卷
- 渭南职业技术学院《结构成就建筑之美》2024-2025学年第一学期期末试卷
- 2025年河北单招七类考试题库
- 2025年健身教练专业知识测评考核试卷及答案
- 2025年黑龙江省事业单位招聘考试教师化学学科专业试卷
- 2025四川成都农商银行招聘综合柜员岗4人模拟试卷带答案详解
- 2025年辅警考试公共基础知识真题库(含答案)
- 2022版《义务教育数学课程标准》测试卷(完整版含答案)
- 2025行政执法人员考试题库含答案
- 联通校招测评题库及答案
- 儿科护理进修
- 2025年安防生产行业技能考试-安全防范系统安装维护员历年参考题库含答案解析(5套共100道单选合辑)
- 2024年西藏米林县人民医院公开招聘护理工作人员试题带答案详解
评论
0/150
提交评论