HDFS存储系统浅析.doc

  1. 1、本文档共11页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
HDFS存储系统浅析

学 号: 题 目 HDFS数据存储系统浅析 学 院 专 业 班 级 姓 名 课 程 中间件技术与应用 年 月 日 HDFS数据存储系统浅析 摘 要:Hadoop Distributed File System,简称HDFS,是一个分布式文件系统。HDFS有着高容错性(fault-tolerant)的特点,并且设计用来部署在低廉的(low-cost)硬件上。而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。。本文主要有两部分组成,一部分是分析HDFS的基本特征和结构,比较它与其它分布式并行文件系统的异同点,从而理解HDFS的设计思想和目标;另一部分是描述了HDFS的数据管理机制。HDFS是一个适合部署在廉价的机器上,具有高传输率、高容错性等特点的系统,以流的形式访问文件系统中的数据,从而解决访问速度和安全性问题,非常适合大规模数据集上的应用。 关键词:Hadoop; HDFS;并行文件系统;大规模数据集 1 引言 Hadoop是Apache下的一个子项目,它原先是Nutch项目的组成部分,于2006年初从Nutch中分离出来成为一个独立的项目。Hadoop是一种易于扩展的分布式计算架构,能够将廉价PC节点联合起来提供大型计算服务。它完全使用Java语言开发,因而可以广泛运行在多种软硬件平台上。其主要优点是:可扩展性(Scalable)、低成本(Economical)、高效性(Efficient)、可靠性(Reliable)。但是也有一些不足的地方,如: 1)与其他文件系统的兼容操作效率较低; 2)难以处理实时性要求较高的应用; 3)目前缺乏稳定版本的开发接口为应用造成障碍。 如图1所示,Hadoop逻辑上分为两层:分布式文件系统HDFS(Hadoop Distributed File System)、MapReduce并行计算框架。 Hadoop分布式文件系统(Hadoop Distributed File System,HDFS)是开源云计算软件平台Hadoop框架的底层实现部分,适合运行在通用硬件上的分布式文件系统,具有高容错性,能提供高吞吐量的数据访问,非常适合于大规模数据集上的应用。 MapReduce是在HDFS的基础上实现的并行框架,为用户提供容易使用的并行编程模式,MapReduce计算包括两个阶段,Map(映射)阶段和Reduce(规约)阶段。首先,Map函数把一组(Key,Value)输入,映射为一组中间结果 (Key,Value),然后通过Reduce函数把具有相同Key值的中间结果,进行合并化简。MapReduce将计算作业分成许多小的单元,同时数据也会被HDFS分为多个Block,并且每个数据块被复制多份,保证系统的可靠性,HDFS按照一定的规则将数据块放置在集群中的不同机器上,以便MapReduce在数据宿主机器上进行计算。 图1 hadoop结构图 2 分布式文件系统HDFS HDFS被设计为将海量文件存储在一个大集群的多台计算机上。HDFS的设计是受到了GFS地启发。HDFS将每一个文件以分块序列的形式进行存储,一个文件的所有分块除去最后一个分块外都是等大小的。为了实现容错将文件分块进行自动复制。文件分块的块大小和复制比例都是可以按照单个文件进行配置的。HDFS中的所有文件都是“只写一次”并且严格限定在任何时候只有一个写文件操作者。 2.1 HDFS基本特征 HDFS是Hadoop框架的分布式并行文件系统,是分布式计算的存储基石。它负责数据分布式存储及数据的管理,并能提供高吞吐量的数据访问。HDFS的基本特征如下: (l)对于整个集群有单一的命名空间。 (2)文件会被分割成多个文件块,每个文件块被分配存储到数据节点上,而且根据配置会有复制的文件块来保证数据安全性。 (3)数据一致性。适合一次写入多次读取的模型,客户端在成功创建文件之后,才能看到文件的存在。 (4)Hadoop,包括HDFS,非常适合在廉价机器上的分布式存储和分布式处理。它是容错的、可伸缩的、非常易于扩展。并且,以简单性和适用性著称的MapReduce是Hadoop不可缺少的重要组成部分。 (5)HDFS的默认配置适合于大多数安装的应用。通常情况下,只有在一个非常大规模的集群上才需要修改默认配置。 (6)支持shell命令行风格的HDFS目录交互。 (7)HDFS是用java编写的,可广泛运行在多种软硬件平台上。 (8)HDFS经常性地实现新的特性和改进。 (9)NameNode和DataNode都内建了We

文档评论(0)

wuyuetian + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档