黄 泽
(1.广西师范大学 计息机与信息工程学院,广西 桂林 541004;
2.河池学院 计算机与信息科学系,广西 宜州 546300)
分布式网络文件系统的研究
黄 泽1,2
(1.广西师范大学 计息机与信息工程学院,广西 桂林 541004;
2.河池学院 计算机与信息科学系,广西 宜州 546300)
分布式网络文件系统能够将文件资源有效整合,实现文件资源的存储与传输。首先对文件系统进行了需求分析,接着重点探讨了分布式网络文件系统的设计与实现,涉及到:文件存储与传输的设计、用户空间服务的实现以及文件视图终端的实现。
分布式网络;文件系统;存储;传输
通常情况下,分布式网络文件系统都是将文件保存到服务器,并且能够实现客户终端像访问本地一样进行有效访问。服务需要拥有大量的存储空间,如果网络中的每个客户终端都具备这样一个大的存储空间,显然投资太大,并不现实。因此,当有一些用户进行文档共享时,分布式网络文件系统的优越性就体现出来了。可见,研究分布式网络文件系统,可以将网络上分散的文件资源整合成一个空间,是一个具有诸多好处的工作。
针对分布式网络文件系统,用户并不关注相关资源保存在哪个空间,他们只关注资源的正常上传以及下载即可。系统用户的直接需求就是要保证文件资源的持久性,其次要保证文件资源浏览的完整性。
对于分布式网络文件系统的存储而言,用户的需求主要对应于各类操作,包括:浏览、建立、获取等等。系统应该为每个用户提供一个虚拟的数据空间,这些操作就可以与数据空间的操作对应起来。而系统传输主要是指用户与文件系统之间的数据通信,用户可以根据文件名或者文件源地址等关键参数,实现文件的定位以及传输,该用户还应该可以实现整个传输流程的监控。
针对系统的存储,设计原则主要体现在可用性、透明性以及完整性三个方面。其中,可用性就是用户对文件系统资源的可达性;透明性是指用户不需要关心存储技术的细节,而只需实现上传或者下载操作的正常完成;完整性就是用户定位的文件资源是可获取、可操作的。
针对系统的传输,设计原则主要体现在稳定性以及高效性两个方面。其中,稳定性就是保证用户发出传输任务都可以正常完成,有故障出现时,可以通过断点续传方式进行任务的恢复。高效性是在稳定性基础上的一个提升要求,保证更高的传输速率。
分布式网络文件系统涉及到的功能主要是存储与传输,针对这两大功能,本文通过设计若干个子功能模块保证文件系统工作流程的正常实现,涉及到:元数据管理模块、存储资源管理模块、策略分析模块、可靠传输终端模块、文件视图终端模块等,如图1所示。
图1 分布式网络文件系统的功能模块图
分布式网络文件系统的文件存储工作流程设计如下描述:
首先,文件系统终端直接向系统元数据管理模块发出文件创建的请求;管理模块接收到请求,将会创建该文件和相关的目录关系,同时将这个文件的状态设置成“正在传输”;
其次,元数据管理模块向文件系统存储服务器发出资源返回的请求,存储模块做出响应,并向策略分析模块发出分析资源的请求,资源请求分析好后,传送至元数据管理模块以及策略分析模块;
接着,元数据管理模块生成对应的传输任务,并传递到文件系统终端,文件系统终端将该传输任务进行转发至可靠传输终端,传输成功后返回确认信息;
最后,文件系统终端将文件状态进行更新,并反馈给元数据管理模块,并进行最后的确认操作即可。
分布式网络文件系统的文件传输工作流程设计如下描述:
首先,文件视图终端将文件传输请求发送到元数据管理模块,元数据管理模块将相关的下载副本资源转送到策略分析模块进行分析;
其次,策略分析模块经过分析后生成副本列表后,元数据管理模块生成传输任务的计划,并反馈给文件视图终端;
最后,文件视图终端直接将传输任务计划传给可靠传输终端,传输完成之后反馈成功确认操作即可。
针对分布式网络文件系统中的用户空间服务,本文是通过MySQL实现的。MySQL中的每一个文件都与一条记录对应起来,而记录中的每个字段都有着对应的特殊含义。比如:File ID表示文件的标识,Parenet ID用来表示文件在建立树结构时父节点的一些信息,通过这个字段可以很容易检索到相关的倒查节点。File Name用来表示文件具体的名字。File Path用来保存相关的路径信息,可以涉及到根目录直至节点。Is Dir则是一个布尔量,有两种状态,分别表示文件还是文件夹。如果一个根节点的File Name是root,分布式网络文件系统可以通过自上而下的方式,从Parent ID进行检索,并建立对应的文件树型,文件树型如图2所示。
图2 文件系统的结构示意图
文件视图终端如果在获取文件树结构时,都生成数据处理的记录树,那显然会造成很大的性能损耗,因此本文通过将文件树结构信息暂保存至客户端,这样就可以只维护一些暂存信息即可。在具体的实现过程中,本文借助于XML文档来暂存树结构,如下描述:
随着分布式网络的高速发展,它不再是一个步止于象牙塔的学术构想,而已经将其触角伸向技术领域、服务领域,不局限于初始的应用背景科学计算,将分布式网络推向网络服务是大势所趋。而此时作为分布式网络架构底层的数据模块逐渐向一个相对自治,能够在提供他模块数据功能的同时提供终端用户稳定高效数据服务的独立系统转变。本文主要设计了一个分布式网络环境下的分布式文件系统,有效保证了文件系统资源的有效存储以及传输。
[1]杜松.一种基于局域网络的分布式文件系统[J].微计算机信息,2008,(27).
[2]鲍捷.分布式网络计算机域的一种系统模型及其文件系统[J].计算机应用与软件,2006,(5).
[3]林木辉.基于可扩展、高性能分布式文件系统的网络存储方式的研究与实现[J].福建电脑,2010,(9).
[4]吴英.基于网络软RAID的分布式文件系统的设计与实现[J].计算机工程与应用,2005,(16).
A Research into the File System Based on Distributed Network
HUANG Ze1,2
(1.School of Computer and Information Engineering,Guangxi Normal University,Guilin,Guangxi 541004;
2.Department of Computer and Information Science,Hechi University,Yizhou,Guangxi 546300,China)
The file system based on distributed network can integrate the file resources,and achieve the storage and transmission of file resources.The paper first analyzes the requirement of the system,then designs and implements the file system based on distributed network,which involves the design of file storage and transmision,the implementation of user space service and the realization of file view terminal.
distributed network;file system;storage;transimssion
TP316.4
A
1672-9021(2011)02-0046-03
黄泽(1980-),男(壮族),广西贵港人,河池学院计算机与信息科学系讲师,主要研究方向:计算机网络,计算机辅助教学。
2010-03-10
[责任编辑 刘景平]