e-works数字化企业网  »  文章频道  »  基础信息化  »  IT综合

Hadoop分布式文件系统的模型分析(上)

2012/2/23    来源:万方数据    作者:王峰  雷葆华      
关键字:Hadoop分布式文件系统  系统模型  云计算  
Hadoop分布式文件系统是遵循Google文件系统原理进行开发和实现的,受到了业界极大关注,并已被广泛应用。鉴于当前缺乏从系统设计理论的角度对其开展的相关研究,本文从Hadoop分布式文件系统架构的建模入手,通过对模型各组成部分进行分析,并将其与传统的分布式文件系统进行比较,总结出Hadoop分布式文件系统具有的海量、高可扩展性、高可靠性、高性能等面向云计算领域应用的重要特征。本文有助于研究者系统、深入地研究Hadoop分布式文件系统的设计与实现,并为云计算背景下的分布式文件系统设计提供重要的参考。

1 引言

    Hadoop分布式文件系统(hadoop distributed me system,HDFS)是具有高可靠性和高可扩展性的分布式文件系统,能够提供海量的文件存储能力。它的开发和实现遵循了Google文件系统(Google file system,GFS)的核心原理,而GFS作为Goosle云计算核心技术体系的底层,为相关技术(如MapReduee分布式计算模型、Bigtable分布式数据库等)的实现提供了有效的支撑。同样,HDFS本身以及以它为基础的一系列开源软件技术的研究和开发,已被业界广泛应用到云计算的具体实践中,获得了非常好的效果。当前,针对HDFS的研究普遍关注其具体的技术细节和实施效果.尚缺乏对其进行系统设计理论上的分析和比较。本文从模型分析的角度人手,首先介绍在业界获得普遍认同的分布式文件系统的用户需求和架构模型,然后针对HDFS的体系架构进行特征描述和建模分析,最后将HDFS与传统的分布式文件系统进行比较,总结了HDFS在云计算领域中应用的优势及存在的问题。并对其设计和应用提出建议。

 分布式文件系统的透明性需求  

    表1 分布式文件系统的透明性需求

2分布式文件系统模型

    分布式文件系统是分布式系统的关键技术之一,能够以文件的方式实现信息资源的共享。在云计算环境中,分布式文件系统承担着为用户提供文件服务的重任,它要保证用户在访问、保存在云中的文件时能够获得接近甚至在某些方面超出其在使用本地磁盘时的服务质量(包括性能、可靠性等)。

    分布式文件系统通过网络为用户提供远程文件服务,它的设计目标是要使得用户感知不到其访问的是存储在远程服务器中的文件。因此,分布式文件系统的设计特别强调系统对用户的透明性。系统的透明体现在多个方面,具体内容见表1。

    满足用户的透明性需求对于分布式文件系统设计非常关键,直接影响了用户对远程文件的访问体验。除此以外,还有其他一些设计需求,包括分布式文件系统需要具有高可用性,能够支持异构客户端的并发访问,能够提供文件数据的多个拷贝并保证文件数据的一致性和安全性等。

    针对这些需求,已经有数量众多的分布式文件系统被提出,它们在设计和实现上各具特点。为能够对这些文件系统进行分析和比较,参考文献提出了如图1所示的分布式文件系统的远程文件服务模型。

    该文件服务模型得到了学术界和产业界的广泛认同,主要由扁平文件(Flat File)服务、目录服务和客户端模块3部分组成。其中,扁平文件服务实现对服务器磁盘上保存的文件内容的操作,负责创建、删除文件以及读写文件的内容和属性,为每个文件创建惟一的文件标识符供后续操作时引用;目录服务实现的是文件的文本名字与其对应标识符之间的映射,负责目录的创建、删除以及目录中文件的增删和查找,生成的目录也是以文件方式保存并由扁平文件服务负责管理;客户端模块则是运行在客户端上,负责封装对扁平文件服务和目录服务的访问。提供了从客户端本地文件系统的文件操作接口到远程服务器的相关功能调用的映射。

   分布式文件系统的文件服务模型

    图1 分布式文件系统的文件服务模型

 

责任编辑:赵蔓
本文为授权转载文章,任何人未经原授权方同意,不得复制、转载、摘编等任何方式进行使用,e-works不承担由此而产生的任何法律责任! 如有异议请及时告之,以便进行及时处理。联系方式:editor@e-works.net.cn tel:027-87592219/20/21。
e-works
官方微信
掌上
信息化
编辑推荐
新闻推荐
博客推荐
视频推荐