Hadoop分布式文件系统:结构与设计概念.doc

Hadoop分布式文件系统:结构与设计概念.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
北华大学计算机科学技术 分布式云计算论文 学生姓名: 杨天瑞 学 号: 33 专 业: 网络工程 指导教师: 李益民 二零一六年四月 Hadoop分布式文件系统:结构与设计 网络13-2 33 号 摘要 Hadoop 分布式文件系统 (HDFS)是一个设计为用在普通硬件设备上的分布式文件系统。它与现有的分布式文件系统有很多近似的地方,但又和这些文件系统有很明显的不同。HDFS 是高容错的,设计为部署在廉价硬件上的。HDFS对应用程序的数据提供高吞吐量,而且适用于那些大数据集应用程序。HDFS开放了一些POSIX的必须接口,容许流式访问文件系统的数据。HDFS最初是为了Apache 的Nutch网络搜索引擎项目的下层构件而设计的。是Hadoop项目的一部分,而这又是Apache的 Lucene项目的一部分。 :HDFS,Hadoop,问文件系统,Lucene。 11. 硬件错误   硬件错误是正常的,而不是异常。HDFS实例由成百上千个服务器组成,每个都存储着文件系统的一部分数据。事实上,这就会有大量的组件,而 每个组件出故障的可能性都很大,这意味着HDFS总有一些组件是不能工作的。因此,检测错误并快速自动恢复就成了HDFS的核心设计目标。   1.2. 流式数据访问   运行在HDFS上的应用程序需要流式的访问它们的数据集,它们也不是通常运行在普通文件系统上的普通应用程序。HDFS为了那些批量处理而 设计的,而不是为普通用户的交互使用。强调的是数据访问的高吞吐量而不是数据访问的低反应时间。POSIX强加的很多硬性需求是HDFS上应用程序所不需 要的, 这些POSIX语义在一些关键环境下被用来提高数据的吞吐频率。   1.3. 大数据集   运行在HDFS上的应用程序 使用大数据集。HDFS一个典型的文件可能是几GB的或者几TB的。因此,HDFS适用于大文件。这将提供高集成带宽,并在一几集群中提供上百个结点。一 个实例可能支持上千万个文件。   1.4. 简单一致性模型   HDFS的应用程序需要对文件实行一次性写,多次读的访问模式。文件一 旦建立后写入,文件就不需要再更改了。这样的假定简化了数据一致性问题并使高数据吞吐量成为可能。MapReduce程 序或者网络爬虫程序就很适合使用这样的模型。当然未来计划支持增量写。   1.5. 移动计算环境比移动数据划算   如果就在数据的旁边就执行对这些数据的操作,那么程序所使用的设备就会 很高效。这当文件相当巨大的时候就尤其正确。这可以减少网络的拥塞和提高系统的吞吐量。这个假设还意味着,常常是把计算迁移到数据存储的近处更好,而不是 把数据传输到程序运行的地方。HDFS提供了程序接口以便把他们自己移动到数据存储的地方执行。   1.6. 跨硬件和软件平台的移动   HDFS设计为容易的从一个 平台移动到另一个平台。这有助于HDFS被采用做为一个大程序集合的工作平台。   2. 名字结点和数据结点   HDFS 是主/从结构的。一 个集群有一个名字结点,也就是主控制服务器,负责管理文件系统的名字空间并协调客户对文件的访问。还有一堆数据结点,一般一个物理结点上部署一个,负责它 们所在的物理结点上的存储管理。HDFS开放文件系统的名字空间以便让用户数据存储的文件中。内部,一个文件被分割为一个或者多个数据块,这些数据块存储 在一组数据结点中。名字结点执行文件系统的名字空间操作,比如打开、关闭、重命名文件或目录,还决定数据块从数据结点的映射。数据结点负责提供客户的读写 请求。数据结点还依照名字结点的指令执行数据块的创建、删除复制工作。   名字结点和数据结点是设计为运行在普通机器上的软件组件。这些机器大多运行GNU/Linux操作系统。HDFS使用 JAVA语言来实现;任何支持JAVA的机器都可以运行名字结点和数据结点软件。使用高度可以移植的JAVA语言意味着HDFS可以被很多种机器使用。一 个典型的部署有一台指定的机器只运行名字结点,体系结构并不排除在那台机器上也运行数据结点,但是现实中的部署很少那样使用。   一个集群中只有一个名字结点大大简化了系统机构。名字结点做为所有系统元数据的存储和仲裁者。系统这样设计就会使用户 数据从不会流经名字结点。   3. 文件系统的名字空间   HDFS 支持传统的文件组 织体系结构。用户或者程序可以创建目录,并在目录中存储文件。名字空间的结构和大多现有文件系统类似。你可以创建、删除文件,把文件从一个目录移动到另一 个目录,或者重命名文件。HDFS还没有实现用户配额和访问权

文档评论(0)

挺进公司 + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档