轻量级分布式文件存储系统及文件上传的方法

文档序号:7629432阅读:133来源:国知局
专利名称:轻量级分布式文件存储系统及文件上传的方法
技术领域
本发明涉及一种存储系统及信息的互连或传送的方法,特别是指一种轻量级分布式文件存储系统,及轻量级分布式文件存储系统中文件上传的方法。
背景技术
分布式文件系统已经发展了将近20年,随着Internet的出现,人们研制了面向Internet的分布式文件系统。一般来说分布式文件系统的拓扑结构有两种一种是星型结构,如作为国家863课题的“燕星1.0”系统,结构如图1所示,该系统由一台名字服务器和多台专门的文件服务器组成。一个文件被拆分成两部分目录信息和文件信息,其中目录信息保存在名字服务器上,文件信息保存在文件服务器上。名字服务器的主要功能是保存系统中所有文件的目录信息,并向用户提供文件名解析服务。“燕星1.0”主要解决的是面向海量用户的Internet文件存储系统。
一种是完全分布式结构,即如图2所示的面向Internet的分布式文件系统是基于对等结构(P2P,Peer-to-Peer)的广域网分布存储,整个系统没有集中式服务器,所有节点都是完全对等的。P2P存储系统在广域网内进行大规模分布式文件存储,也就是说,P2P存储系统的基本目标是帮助用户把文件分布到广域网的多个节点上,并且保证文件的完整性、一致性、可靠性和可用性。与传统的基于集群或者局域网的分布式存储系统相比,这种大规模的文件分布具有以下优势1、存储容量大P2P存储系统中的一个存储节点既可以是一般的个人用户的PC机,也可以是基于集群的大型存储设备。因此P2P存储系统实际上是把系统中具有存储能力的所有节点整合成一个更大的统一整体,提供上百甚至上千TB的存储空间。
2、可靠性、可用性更高星型结构的分布式系统存在名字服务器的单点故障风险,P2P存储系统无需集中的名字服务器,在整个Internet中搭建,文件在全球范围内分布,可以通过在广域网范围内进行文件冗余管理增强文件的可靠性和可用性。
3、分布式访问效率更高文件在全球范围分布存储的另一个好处是对于一些经常处于移动(比如出差)中的用户可以随时访问自己存储的文件。
面向Internet的分布式文件系统解决了文件在广域网上的分布式存储,但这些系统有其局限性(1)无论是星型结构,还是P2P结构,其存储服务器之间是对等的,在文件上载和访问时可以根据网络距离选择就近的服务器。但这种选择和企业组织的层次并不具有天然的一致性,另外,企业内部的存储具有局部性,对于组织的每个下级机构而言,访问的大部分数据来源于本级机构。
(2)其次,分布式文件的存储位置在企业组织内部并不完全是透明的,一个可能的原因在企业组织内部的政策要求某些特征的文件必须存储在指定的服务器上。
(3)现有分布式存储系统需要在服务器和客户端安装相应的软件,以提供上传、下载文件目录,而现有分布式存储系统的软件多基于私有协议,因此在网络中很容易被防火墙屏蔽,导致系统可用性下降。

发明内容
本发明的目的是提出一种轻量级分布式文件存储系统以及文件上传的方法,主要面向地域分布很广但每一地域接入节点有限的用户,能够使用户将文件按照预先设定的策略将文件存储到指定的服务器上,或者在策略不生效时优先存储于本存储区域的存储服务器中,以降低对网络带宽的要求。
本发明提出的轻量级分布式文件存储系统包括目录服务器、存储服务器、客户机,所述目录服务器、存储服务器采用树型分层网络结构,即目录服务器通过网络连接一台或多台存储服务器,所述的每台存储服务器通过网络连接有一台或多台存储服务器,客户机通过网络连接其中一台存储服务器。
本发明提出的轻量级分布式文件存储系统文件上传的方法,包括以下步骤(1)用户向目录服务器发起上传文件请求,所述请求信息包括所要上传文件大小及其特征描述;(2)目录服务器判断该用户是否合法,若为合法用户,则读取发起请求用户的注册信息中的位置信息,进入步骤(3),否则拒绝该请求,步骤结束;(3)检查上传文件的特征描述,若满足策略定义的特征,目录服务器将策略定义的存储服务器的当前存储容量与用户所要上传文件的大小进行比较,若大于或等于,目录服务器将则所述存储服务器链接返回用户并进入步骤(8),否则进入步骤(4)(4)目录服务器根据用户的位置信息搜索出用户注册区域的存储服务器,并读取所述存储服务器当前的存储容量;(5)目录服务器将所述存储服务器的当前存储容量与用户所要上传文件的大小进行比较,若大于或等于则目录服务器将所述存储服务器的链接返回用户并进入步骤(8),若小于则进入步骤(6);(6)目录服务器按照存储区域上溯,搜索上级区域的存储服务器,并将其当前存储容量与用户所要上传文件的大小进行比较,若大于或等于则目录服务器将所述存储服务器的链接返回用户并进入步骤(8),若小于则判断当前区域是否是顶层区域,如是进入步骤(7),否则回到步骤(6);(7)目录服务器搜索系统中其他存储服务器,并将其当前存储容量与用户所要上传文件的大小进行比较,将第一个搜索到的当前存储容量大于用户所要上传文件大小的存储服务器的链接返回用户,并进入步骤(8);若所有存储服务器当前存储容量都小于用户所要上传的文件大小,则中断用户的上传请求,向用户返回错误信息;(8)用户根据返回的存储服务器的链接,将文件上传到相应的存储服务器。
其中,本发明提出的轻量级分布式文件存储系统文件上传的方法还包括以下步骤存储服务器向目录服务器发起注册请求,目录服务器对该存储服务器进行身份认证,若认证通过则记录存储服务器的认证信息,若未通过则返回注册失败消息。
其中,注册请求信息中包括存储服务器的位置信息、存储区域信息和该存储区域的存储容量信息。
其中,存储服务器更改设置时重新向目录服务器进行注册。
其中,本发明提出的轻量级分布式文件存储系统文件上传的方法还包括以下步骤用户向目录服务器发起注册请求,目录服务器对用户进行身份认证,若认证通过则记录用户的相关认证信息,若未通过则返回注册失败消息。
其中,用户请求信息包括有用户的位置信息。
本发明提出的轻量级分布式文件存储系统以及轻量级分布式文件存储系统文件上传的方法,能够将用户上传的文件按照预先设定的策略将文件存储到指定的服务器上,或者在策略不生效时优先存储于用户所在区域的存储服务器中,能够加快用户对于文件的访问速度,降低对于网络带宽的要求,提高存储系统的可用性。


图1为“燕星1.0”系统结构示意图;图2为P2P存储系统结构示意图;图3为本发明提出的装置优选实施例的系统结构示意图;图4为本发明的流程图;图5为本发明存储服务器的存储接口示意图;图6为用户下载文件流程图。
具体实施例方式
本发明提出的轻量级分布式文件存储系统优选实施例流程如图3所示,包括目录服务器、存储服务器,所述的目录服务器和存储服务器采用树型分层网络结构,即目录服务器位于树型机构的顶端,存储服务器通过网络连接目录服务器,形成存储区域1、存储区域2......存储区域n。每一台存储服务器又通过网络连接数台下级存储服务器,形成存储区域11、存储区域12......存储区域1n。如果需要将存储区域划分得更为精确,可以再为每台下级存储服务器再通过网络连接底层存储服务器。这种树型分层结构的存储系统,能够将每个地域形成一个存储区域,并通过目录服务器来决定存储策略并提供目录服务。例如分支机构在全国分布很广但每一分支机构的接入节点有限的用户,可以设置一个目录服务器,然后设置华北地区存储服务器、华东地区存储服务器、西北地区存储服务器、西南地区存储服务器,所述存储服务器通过网络与目录服务器连接。客户机通过网络连接所属存储区域的存储服务器,系统中每台客户机属于且只属于一个存储区域。作为优选,为了提高访问效率,可以为每台存储服务器配置缓存服务器。
本发明提出的轻量级分布式文件存储系统上传文件的方法优选实施例流程图如图4所示,当一个存储区域增加一台存储服务器或更改存储服务器设置时,存储服务器向目录服务器发起注册请求,目录服务器对该存储服务器进行身份认证,若认证通过则记录存储服务器的认证信息,若未通过则返回注册失败消息。其中,注册请求信息中包括存储服务器的位置信息、存储区域信息和该存储区域的存储容量信息。
使用前用户必须注册用户向目录服务器发起注册请求,目录服务器对用户进行身份认证,若认证通过则记录用户的相关认证信息,若未通过则返回注册失败消息。其中,用户请求信息包括有用户的位置信息,例如用户所属的存储区域为北京,北京的上级存储区域是华北,存储区域的根则为总部区域;存储的策略可以根据用户需要进行定义,如“专利申请文献必须存储在总部区域”;用户在上传文件时包括以下步骤(1)用户向目录服务器发起上传文件请求用户选择所需上传的文件,并向目录服务器发出上传文件请求,请求信息中包括用户所要上传的文件的大小及其文件特征;(2)目录服务器收到用户的请求信息后,首先读取用户注册资料以获取用户所处存储区域为北京;(3)检查上传文件的特征描述,判断上传文件是否专利文献,若是,则将总部存储服务器的当前存储容量与用户所要上传文件的大小进行比较,若大于,目录服务器将总部区域的存储服务器定义的存储服务器链接返回用户并进入步骤(8),否则进入步骤(4);(4)目录服务器读取北京存储服务器当前的存储容量;(5)目录服务器将北京存储服务器的当前存储容量与用户所要上传文件的大小进行比较,若大于则将北京存储服务器存储接口的链接返回用户并进入步骤(8),若小于则进入步骤(6);(6)目录服务器按照存储区域上溯(第一次上溯到华北区域,第二次则上溯到总部区域),搜索上级区域的存储服务器,并将其当前存储容量与用户所要上传文件的大小进行比较,若大于或等于则目录服务器将所述存储服务器的链接返回用户并进入步骤(8),若小于则判断当前区域是否是顶层区域,如是进入步骤(7),否则回到步骤(6);(7)目录服务器读取其它存储服务器的当前存储容量与用户所要上传文件的大小进行比较,将第一个搜索到的当前存储容量大于用户所要上传文件大小的存储服务器存储接口的链接返回用户并进入步骤(8),若所有存储服务器当前存储容量都小于用户所要上传的文件大小,则中断用户的上传请求,向用户返回错误信息;(8)用户根据返回的存储服务器存储接口链接,将文件上传到服务器。
如图5所示,每个存储接口对应文件系统的一个目录,内容就存储在该目录下,存储服务器1分为存储接口11、存储接口12、存储接口1m,每个存储端口对应本地文件的一个目录,例如分别是存储接口11对应C:\Content\、存储接口12对应C:\DigtalAsset\、存储接口13对应D:\AssetStorage\。将存储服务器分解为多个存储接口的优点在于可以方便地扩展存储服务器的存储,如服务器上的物理存储不足时,可以添加物理硬盘,为该存储服务器注册新的存储接口即可;另一方面,在存储服务器上有多个物理硬盘时,可以实现文件的并行读取。
目录服务器对整个系统提供目录服务,具体包括1)存储服务器及其存储接口注册定义存储服务器及其提供的存储接口、各个存储接口的可用存储空间等,定义每个存储接口的访问协议及各访问协议下的链接;2)文件管理记录系统中所有文件的目录信息,并向用户提供文件名解析服务;3)存储区域管理定义存储区域,系统基于存储区域提供存储分配和访问优化服务;4)策略管理系统提供存储分配策略。
用户下载文件流程如图6所示,包括以下步骤1.步骤41,输出内容列表到客户机;2.步骤42,客户机向目录服务器发出内容访问请求3.步骤43,目录服务器接收请求,根据请求解析出文件标识和访问协议、用户标识、用户IP、进一步获取用户所属存储区域;根据文件标识确定文件所在的所有存储接口;根据存储区域确定离访问者区域最近的存储服务器存储接口,并获得文件的链接;4.步骤44,将文件的链接返回客户端;5.步骤45,客户端根据返回的链接进行重定向处理;6.步骤46,客户端根据返回的链接访问文件;
7.步骤47,存储服务器向内容管理服务器询问当前用户是否具有访问该文件的权限;8.步骤48,内容管理服务器返回权限信息;9.步骤49,若用户具有访问权限,存储服务器接受请求,向客户端传输文件;若用户不具有访问权限,向用户返回错误信息。
根据用户的需求,本发明还可以为存储服务器配置缓存服务器,系统根据文件的访问情况的统计结果将内容分发到相应的缓存服务器上,并根据设定的策略自动淘汰缓存服务器上的文件,缓存淘汰策略包括本区域大多数用户已访问策略、最少用户访问策略等。
权利要求
1.一种轻量级分布式文件存储系统,包括目录服务器、存储服务器、客户机,其特征在于所述目录服务器、存储服务器采用树型分层网络结构,即目录服务器通过网络连接一台或多台存储服务器,所述的每台存储服务器通过网络连接有一台或多台存储服务器,客户机通过网络连接其中一台存储服务器。
2.根据权利要求1所述的轻量级分布式文件存储系统,其特征在于,所述存储服务器连接有缓存服务器。
3.一种轻量级分布式文件存储系统文件上传的方法,其特征在于,包括以下步骤(1)用户向目录服务器发起上传文件请求,所述请求信息包括所要上传文件大小及其特征描述;(2)目录服务器判断该用户是否合法,若为合法用户,则读取发起请求用户的注册信息中的位置信息,进入步骤(3),否则拒绝该请求,步骤结束;(3)检查上传文件的特征描述,若满足策略定义的特征,目录服务器将则选取策略定义的存储服务器链接返回用户并进入步骤(8),否则进入步骤(4);(4)目录服务器根据用户的位置信息搜索出用户注册区域的存储服务器,并读取所述存储服务器当前的存储容量;(5)目录服务器将所述存储服务器的当前存储容量与用户所要上传文件的大小进行比较,若大于或等于则目录服务器将所述存储服务器的链接返回用户并进入步骤(8),若小于则进入步骤(6);(6)目录服务器按照存储区域上溯,搜索上级区域的存储服务器,并将其当前存储容量与用户所要上传文件的大小进行比较,若大于或等于则目录服务器将所述存储服务器的链接返回用户并进入步骤(8),若小于则判断当前区域是否是顶层区域,如是进入步骤(7),否则回到步骤(6);(7)目录服务器搜索系统中其他存储服务器,并将其当前存储容量与用户所要上传文件的大小进行比较,将第一个搜索到的当前存储容量大于用户所要上传文件大小的存储服务器的链接返回用户,并进入步骤(8);若所有存储服务器当前存储容量都小于用户所要上传的文件大小,则中断用户的上传请求,向用户返回错误信息;(8)用户根据返回的存储服务器的链接,将文件上传到相应的存储服务器。
4.如权利要求3所述的一种轻量级分布式文件存储系统文件上传的方法,其特征在于,该方法还包括以下步骤存储服务器向目录服务器发起注册请求,目录服务器对该存储服务器进行身份认证,若认证通过则记录存储服务器的认证信息,若未通过则返回注册失败消息。
5.如权利要求4所述的一种轻量级分布式文件存储系统文件上传的方法,其特征在于,所述注册请求信息中包括存储服务器的位置信息、存储区域信息和该存储区域的存储容量信息。
6.如权利要求4所述的一种轻量级分布式文件存储系统文件上传的方法,其特征在于,所述存储服务器更改设置时重新向目录服务器进行注册。
7.如权利要求3所述的一种轻量级分布式文件存储系统文件上传的方法,其特征在于,该方法还包括以下步骤用户向目录服务器发起注册请求,目录服务器对用户进行身份认证,若认证通过则记录用户的相关认证信息,若未通过则返回注册失败消息。
8.如权利要求7所述的一种轻量级分布式文件存储系统文件上传的方法,其特征在于,所述用户请求信息包括有用户的位置信息。
全文摘要
本发明公开了轻量级分布式文件存储系统及文件上传的方法。针对现有分布式存储系统在企业组织应用的局限性,本发明提出的系统中目录服务器、存储服务器采用树型分层网络结构,即目录服务器通过网络连接一台或多台存储服务器,所述的每台存储服务器通过网络连接有一台或多台存储服务器,客户机通过网络连接其中一台存储服务器。本发明轻量级分布式文件存储中系统文件上传的方法能够将用户上传的文件按照预先设定的策略将文件存储到指定的服务器上,或者在策略不生效时优先存储于用户所在区域的存储服务器中。本发明提出的轻量级分布式文件存储系统和文件上传的方法能够加快用户对于文件的访问速度,降低对网络带宽的要求,提高系统可用性。
文档编号H04L29/06GK1996843SQ200510132589
公开日2007年7月11日 申请日期2005年12月26日 优先权日2005年12月26日
发明者王绪胜, 冯耘霞, 王仲, 吴於茜 申请人:北大方正集团有限公司, 北京北大方正技术研究院有限公司, 北京大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1