关于Hadoop中HDFS研究.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
关于Hadoop中HDFS研究

关于Hadoop中HDFS研究   摘要:Hadoop的文件系统HDFS(Hadoop Disttributed Filesystem)是一种分布式文件系统,它利用多个商用硬件构成存储集群,利用namenode进行数据的存储控制,具有支持超大文件、存储灵活、可靠性高等特点,在面对大量数据存储的时候,能够高效地工作,但在处理大量小数据时、需要进行低延迟数据访问时和需要多用户访问写入时仍存在一定的不足。总之,HDFS技术在市场潜力巨大的同时,还存在很多可以改善讨论的地方,具有较高的研究价值。   关键词:Hadoop;HDFS;block;namenode   中图分类号:TP311 文献标识码:A 文章编号:1009-3044(2018)01-0007-02   1 概述   随着人们工作生活中数据量的不断加大,个人电脑中单机存储的体积也在不断增大,与之相对应的,数据中心的数据压力也在成倍增长;要存储这些超大文件,可以对数据进行分区并存储到网络中若干单独的计算机上,管理网络中多台计算机存储的文件系统称为分布式文件系统(Distributed Filesystem)。Hadoop的分布式系统称为HDFS,即Hadoop Distributed Filesystem。   HDFS以流式数据访问模式来存储超大文件,即一次写入,多次读取的方式存取数据最佳:数据集通常由数据源生成或复制而成,接着长时间在此数据集上进行各种分析,这个数据源的写入总是仅在文件的末尾添加数据,不支持多源写入(以目前的技术,即使实现任意位置写入等功能,效率也比较低)。Hadoop是设计运行在民用硬件(普通家用电脑)的集群上的,因此节点的故障率相对于昂贵的专用硬件较高,HDFS的作用就是当节点发生故障时,让一般用户察觉不到明显的中断。   2 HDFS数据块   数据块(block)是磁盘读写数据的最小单位,文件系统通过格式化硬盘,构造特有的磁盘块来管理磁盘存储,通常文件系统块为几k字节(Byte),而磁盘块为512字节,常见的Windows服务器必须安装在NTFS文件系统上,就是因为尽在这种文件系统上才支持服务器对磁盘的管理。HDFS也有块的概念,默认为64MB,与常规文件系统类似,HDFS也将多个块组合作为独立的存储单元(chunk),不同的是,当存储文件小于块大小时,不会独占整个块存储空间。   之所以HDFS中的块要大一些,是为了节省寻址开销:众所周知,在单机上频繁进行硬盘读写操作后,容易产生磁盘存储碎片,进而降低计算机整体运算速度,磁盘碎片整理的过程,其实质是将散乱存储的数据,整理到磁盘相对集中的区域,从而减少磁头寻址时间;同样的,当单位数据块较大时,磁盘读取数据的效率也会明显提高。假设寻址时间固定为10ms,传输速率为100MB/s,为了使寻址时间占传输时间的1%,应将块大小设置为100MB,即1s内,首先用1/100s寻址,之后开始传输,由于数据块有100MB,因此在传输完毕前无需再次寻址,这样,就实现了1:100的高效传输,而通常情况下,HDFS也是使用128MB的块设置。当然,块的大小也不是越大越好,MapReduce中map任务每次只调用一个块进行处理,当map任务数小于节点数量时,会造成大量节点闲置,反而降低了整体的处理速度。   利用这样的块结构,HDFS允许文件的大小大于网络中任意一个磁盘的空间,因为文件的所有块并不需要保存在一个磁盘上;其次,这样的设计也使得存储管理变得更加容易,由于单位块的大小是固定的,文件管理系统很容易计算磁盘能够容纳多少块,同?r,每个块只存储一部分数据,而诸如文件权限等信息不需要与块一同存储,这样,系统就能够单独管理这些信息;在容错性方面,块结构能够有效实现数据的备份,HDFS默认将每个块复制到三台独立的设备上,确保在设备发生故障,导致某个块不可用时,从其他设备读取其副本,保证数据的完整性。   3 namenode   HDFS中存在一个namenode(管理者)和多个datanode(工作者),其中namenode负责管理文件系统的命名,记录所有文件和目录,即永久存在于磁盘的命名空间镜像文件和编辑日志文件,同时,它还负责临时保存块的位置信息。客户通过文件系统接口访问数据,其实质是在与namenode和datanode进行交互。   Datanode是文件系统的工作节点,它就像是人们的末梢神经一样,为各项感知提供数据,而namenode就好像是人们的大脑,对神经的反馈进行综合处理:datanode根据需要存储并检索数据库,定期向namenode发送存储块的列表,而namenode负责记录如何重建文件。namenode一旦损坏,整个文件系统将瘫痪,Hadoop为此提供两种容错机制:

文档评论(0)

189****7685 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档