您好,欢迎访问三七文档
1DFS系统(DFS)是AFS的一个版本,作为开放软件基金会(OSF)的分布分布式文件系统式计算环境(DCE)中的文件系统部分。如果文件的访问仅限于一个用户,那么分布式文件系统就很容易实现。可惜的是,在许多网络环境中这种限制是不现实的,必须采取并发控制来实现文件的多用户访问,表现为如下几个形式:只读共享任何客户机只能访问文件,而不能修改它,这实现起来很简单。受控写操作采用这种方法,可有多个用户打开一个文件,但只有一个用户进行写修改。而该用户所作的修改并不一定出现在其它已打开此文件的用户的屏幕上。并发写操作这种方法允许多个用户同时读写一个文件。但这需要操作系统作大量的监控工作以防止文件重写,并保证用户能够看到最新信息。这种方法即使实现得很好,许多环境中的处理要求和网络通信量也可能使它变得不可接受。NFS和AFS的区别NFS和AFS的区别在于对并发写操作的处理方法上。当一个客户机向服务器请求一个文件(或数据库记录),文件被放在客户工作站的高速缓存中,若另一个用户也请求同一文件,则它也会被放入那个客户工作站的高速缓存中。当两个客户都对文件进行修改时,从技术上而言就存在着该文件的三个版本(每个客户机一个,再加上服务器上的一个)。有两种方法可以在这些版本之间保持同步:无状态系统在这个系统中,服务器并不保存其客户机正在缓存的文件的信息。因此,客户机必须协同服务器定期检查是否有其他客户改变了自己正在缓存的文件。这种方法在大的环境中会产生额外的LAN通信开销,但对小型LAN来说,这是一种令人满意的方法。NFS就是个无状态系统。回呼(Callback)系统在这种方法中,服务器记录它的那些客户机的所作所为,并保留它们正在缓存的文件信息。服务器在一个客户机改变了一个文件时使用一种叫回叫应答(callbackpromise)的技术通知其它客户机。这种方法减少了大量网络通信。AFS(及OSFDCE的DFS)就是回叫系统。客户机改变文件时,持有这些文件拷贝的其它客户机就被回叫并通知这些改变。无状态操作在运行性能上有其长处,但AFS通过保证不会被回叫应答充斥也达到了这一点。方法是在一定时间后取消回叫。客户机检查回叫应答中的时间期限以保证回叫应答是当前有效的。回叫应答的另一个有趣的特征是向用户保证了文件的当前有效性。换句话说,若一个被缓存的文件有一个回叫应答,则客户机就认为文件是当前有效的,除非服务器呼叫指出服务器上的该文件已改变了。数据软件YonghongZ-DataMartYonghongDataMart是一款数据存储、数据处理的软件。YonghongDataMart采用基于ZDFS的分布式列存储系统,就是将数据分散存储在多台独立的设备上。传统的网络存储系统采用集中的存储服务器存放所有数据,存储服务器成为系统性能的瓶颈,也是可靠性和安全性的焦点,不能满足大规模存储应用的需要。分布式网络存储系统采用可扩展的系统结构,利用多台存储服务器分担存储负荷,利用位置服务器定位存储信息,它不但提高了系统的可靠性、可用性和存取效率,还易于扩展。YonghongDataMart的分布式文件存储系统(ZDFS)是在HadoopHDFS基础上进行的改造和扩展,将服务器集群内所有节点上存储的文件统一管理和存储。这些节点包括唯一的一个NamingNode,在ZDFS内部提供元数据服务;许多MapNode,提供存储块。存储在ZDFS中的文件被分成块,然后将这些块复制到多个计算机中(MapNode)。这与传统的RAID架构大不相同。块的大小和复制的块数量在创建文件时由客户机决定。NamingNode监控存在服务器集群内所有节点上的文件操作,例如文件创建、删除、移动、重命名等等。NetworkFileSystem2NFS介绍NFS定义(NFS)(NetworkFileSystem)是个分布式的客户机/服务器文件系统。NFS的实质在于用户间计算机的共享。用户可以联结到共享计算机并像访问本地硬盘一样访问共享计算机上的文件。管理员可以建立远程系统上文件的访问,以至于用户感觉不到他们是在访问远程文件。NFS是个到处可用和广泛实现的开放式系统。NFS设计目标允许用户象访问本地文件一样访问其他系统上的文件。提供对无盘工作站的支持以降低网络开销。简化应用程序对远程文件的访问使得不需要因访问这些文件而调用特殊的过程。使用一次一个服务请求以使系统能从已崩溃的服务器或工作站上恢复。采用安全措施保护文件免遭偷窃与破坏。使NFS协议可移植和简单,以便它们能在许多不同计算机上实现,包括低档的PC机。大型计算机、小型计算机和文件服务器运行NFS时,都为多个用户提供了一个文件存储区。工作站只需要运行TCP/IP协议来访问这些系统和位于NFS存储区内的文件。工作站上的NFS通常由TCP/IP软件支持。对DOS用户,一个远程NFS文件存储区看起来是另一个磁盘驱动器盘符。对Macintosh用户,远程NFS文件存储区就是一个图标。NFS部分功能服务器目录共享服务器广播或通知正在共享的目录,一个共享目录通常叫做出版或出口目录。有关共享目录和谁可访问它们的信息放在一个文件中,由操作系统启动时读取。客户机访问在共享目录上建立一种链接和访问文件的过程叫做装联(mounting),用户将网络用作一条通信链路来访问远程文件系统。NFS的一个重要组成是虚拟文件系统(VFS),它是应用程序与低层文件系统间的接口。3VFS操作close文件关闭操作create文件生成操作fsync将改变保存到文件中getattr取文件属性link用另一个名字访问一个文件lookup读目录项mkdir建立新目录open文件打开操作rdwr文件读写操作remove删除一个文件rename文件改名rmdir删除一目录setattr设置文件属性4AFS服务器AndrewFileSystem(AFS)Andrew文件系统(AFS)AFS是专门为在大型分布式环境中提供可靠的文件服务而设计的。它通过基于单元的结构生成一种可管理的分布式环境。一个单元是某个独立区域中文件服务器和客户机系统的集合,这个独立区域由特定的机构管理。通常代表一个组织的计算资源。用户可以和同一单元中其他用户方便地共享信息,他们也可以和其他单元内的用户共享信息,这取决于那些单元中的机构所授予的访问权限。文件服务器进程这个进程响应客户工作站对文件服务的请求,维护目录结构,监控文件和目录状态信息,检查用户的访问。基本监察(BOS)服务器进程这个进程运行于有BOS设定的服务器。它监控和管理运行其他服务的进程并可自动重启服务器进程,而不需人工帮助。卷宗服务器进程此进程处理与卷宗有关的文件系统操作,如卷宗生成、移动、复制、备份和恢复。卷宗定位服务器进程该进程提供了对文件卷宗的位置透明性。即使卷宗被移动了,用户也能访问它而不需要知道卷宗移动了。鉴别服务器进程此进程通过授权和相互鉴别提供网络安全性。用一个“鉴别服务器”维护一个存有口令和加密密钥的鉴别数据库,此系统是基于Kerberos的。保护服务器进程此进程基于一个保护数据库中的访问信息,使用户和组获得对文件服务的访问权。更新服务器进程此进程将AFS的更新和任何配置文件传播到所有AFS服务器。AFS还配有一套用于差错处理,系统备份和AFS分布式文件系统管理的实用工具程序。例如,SCOUT定期探查和收集AFS文件服务器的信息。信息在给定格式的屏幕上提供给管理员。设置多种阈值向管理者报告一些将发生的问题,如磁盘空间将用完等。另一个工具是USS,可创建基于带有字段常量模板的用户帐户。Ubik提供数据库复制和同步服务。一个复制的数据库是一个其信息放于多个位置的系统以便于本地用户更方便地访问这些数据信息。同步机制保证所有数据库的信息是一致的。5KASS分布式文件系统KASS分布式文件系统(KassFileSystem),简称KFS,是开始软件有限公司自主研发的具有业内先进水平的分布式文件服务系统。KFS系统架构及功能服务类似于Hadoop、GFS等分布式文件系统,它通过HTTP-WEB为上层应用系统(KASS文档管理系统及其他各种应用系统)提供底层文件服务为企业快速搭建云文件服务平台。KFS的核心价值为上层IT应用系统提供统一的底层文件服务平台文件存储服务(分布式存储/海量存储/多副本存储/多版本存储/CDN广域网传输加速/断点续传)文件处理服务(全文搜索/在线预览/格式转换/PDF处理/图片处理/视频播放/水印签章等)服务器集群,系统线性扩展(存储量/并发性/IO吞吐量等)KFS为应用系统提供的文件服务KFS为KASS文档管理系统提供云文件服务6GFS分布式文件系统为保证高可用、高可靠和经济性,云计算采用分布式存储的方式来存储数据,采用冗余存储的方式来保证存储数据的可靠性,即为同一份数据存储多个副本。另外,云计算系统需要同时满足大量用户的需求,并行地为大量用户提供服务。因此,云计算的数据存储技术必须具有高吞吐率和高传输率的特点。云计算系统由大量服务器组成,同时为大量用户服务,因此云计算系统采用分布式存储的方式存储数据,用冗余存储的方式保证数据的可靠性。云计算系统中广泛使用的数据存储系统是Google的GFS和Hadoop团队开发的GFS的开源实现HDFS。GFS即Google文件系统(GoogleFileSystem),是一个可扩展的分布式文件系统,用于大型的、分布式的对大量数据进行访问的应用。GFS的设计思想不同于传统的文件系统,是针对大规模数据处理和Google应用特性而设计的。它运行于廉价的普通硬件上,但可以提供容错功能。它可以给大量的用户提供总体性能较高的服务。云计算的数据存储技术未来的发展将集中在超大规模的数据存储、数据加密和安全性保障以及继续提高I/O速率等方面。GFS是一个管理大型分布式数据密集型计算的可扩展的分布式文件系统,它使用廉价的商用硬件搭建系统并向大量用户提供容错的高性能的服务。GFS和普通的分布式文件系统的区别如表1所示。表1GFS与传统分布式文件系统的区别文件系统组件失败管理文件大小数据写方式数据流和控制流GFS不作为异常处理少量大文件在文件末尾附加数据数据流和控制流分开传统分布式文件系统作为异常处理大量小文件修改现存数据数据流和控制流结合GFS系统由一个Master和大量块服务器构成。Master存放文件系统的所有元数据包括名字空间、存取控制、文件分块信息、文件块的位置信息等。GFS中的文件切分为64MB的块进行存储。在GFS文件系统中,采用冗余存储的方式来保证数据的可靠性。每份数据在系统中保存3个以上的备份。为了保证数据的一致性,对于数据的所有修改需要在所有的备份上进行,并用版本号的方式来确保所有备份处于一致的状态。客户端不通过Master读取数据,避免了大量读操作使Master成为系统瓶颈。客户端从Master获取目标数据块的位置信息后,直接和块服务器交互进行读操作。GFS的写操作将写操作控制信号和数据流分开,如图1所示。图1写控制信号和写数据流即客户端在获取Master的写授权后,将数据传输给所有的数据副本,在所有的数据副本都收到修改的数据后,客户端才发出写请求控制信号。在所有的数据副本更新完数据后,由主副本向客户端发出写操作完成控制信号。当然,云计算的数据存储技术并不仅仅只是GFS,其他IT厂商,包括微软、Hadoop开发团队也在开发相应的数据管理工具。其本质上是一种分布式的数据存储技术,以及与之相关的虚拟化技术,对上层屏蔽具体的物理存储器的位置、信息等。快速的数据定位、数据安全性、数据可靠性以及底层设备内存储数据量的均衡等方面都需要继续研究完善。7Hadoop分布式文件系统Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodityhardware)上的分布式文件系统。它和现有的分布式文件系统有很多共同点。但同时,它和其他的分布式文件系统的区别也是很明显的。HDFS是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。HDF
本文标题:分布式文件存储方案
链接地址:https://www.777doc.com/doc-6299154 .html