一种云数据中心文件管理方法

文档序号:6517988阅读:256来源:国知局
一种云数据中心文件管理方法
【专利摘要】一种云数据中心文件管理方法,在用户上传文件后,为上传的文件创建文件索引表,并将文件索引表分解为局部哈希表,存储在与小块存储块连接的管理子节点中,在用户下载文件时,从文件数据所在的多个存储分块中同时下载文件数据,待所有文件数据下载完毕后拼装成该文件;并且,还基于预测的文件复制频率和文件共享频率对存储区域中的文件数据进行管理。所述方法能够同时从多个存储块中下载文件数据,下载效率得到大幅度提升;能够在空闲时段对存储区域中的文件进行管理,降低用户未来请求文件资源时,存储资源的抢占可能,提高了管理文件的智能性。
【专利说明】一种云数据中心文件管理方法
【技术领域】
[0001]本发明涉及云数据中心应用系统领域,具体涉及一种云数据中心文件管理方法。【背景技术】
[0002]随着信息科技的发展,云计算逐步成为业界的发展热点,国内外各大厂商的云计算服务平台也开始纷纷投入到科学、教育、文化、卫生、政府、高性能计算、电子商务、物联网等多个领域进行使用。
[0003]云计算的一大重要特点,即是通过网络技术,将分布在各地的数据中心中的服务器、存储、网络设备通过管理软件集合起来协同工作,共同对外提供计算与存储等服务。随着存储技术的发展,各大云计算厂商通过集群应用、网格以及分布式文件系统等技术,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供一个统一的大型云数据中心存储系统。
[0004]在云数据中心存储系统中,文件管理的效率直接影响着系统的性能与用户体验度。高效的文件复制、下载、共享效率不仅是必需的,而且已经成为企业成功的先决条件。
[0005]为了降低系统建设成本,减少数据通信开销,简化应用的环节,提高系统性能和效率,保证整个系统的高效稳定运行,向客户提供了更加稳定的存储性能以及更加强大的共享功能,我们提出了一种智能、高效、易开发、易维护的云数据中心文件管理方案。

【发明内容】

[0006]本发明针对现有的云数据中心存储性能低、通信开销大、文件管理效率差的弊端,提出一种通过使用文件索引、P2P网络、预测算法、动态管理等技术手段,管理云数据中心文件的解决方案。
[0007]一种云数据中心文件管理方法,包括:
[0008]所述云数据中心由存储中控中心、管理子节点和存储区域构成,所述方法包括:
[0009]S1:为上传的文件创建文件索引表,存放在存储中控中心,所述文件索引表中的每条文件索引被表示成一个(K,V)记录,其中K是文件的哈希值,V是该存储文件的存储路径,对应由存储了所述文件的多个小块存储块组成的存储区域;
[0010]S2:对文件索引表进行拆分,按照邻近性度量规则将各小块存储块的路径制作成局部哈希表保存到与每一小块存储块距离最近的管理子节点中;
[0011]S3:用户发起文件下载请求后,先计算文件的哈希值K,在中控节点查找到对应的文件存储路径V,再查找V包含的每一小块存储块路径保存在哪个管理子节点的局部哈希表中,找到该小块存储块所在的局部哈希表后,通过其所在的管理子节点下载对应的文件数据,待所有的文件数据完成下载后,进行拼装,组合成用户请求下载的文件。
[0012]一种云数据中心文件管理方法,包括:
[0013]所述云数据中心由存储中控中心、管理子节点和存储区域构成,所述方法包括:
[0014]Sll:统计(n-1)天内云数据中心中存储的文件的复制频率Y,所述复制频率Y定义为该文件的复制次数减去该文件的删除次数;
[0015]S12:基于统计的(η-1)天内的文件复制频率Y,使用埃特金插值公式计算第η天时该文件的复制频率预测值yn ;
[0016]S13:基于第η天时该文件的复制频率预测值7?,确定需要预先配置的该文件的副本数量,在第η天用户请求下载该文件时直接分配给用户。
[0017]传统的云数据中心,大多采用扩大存储的方式增加系统中可存放文件的规模,采用扩增网络带宽的方式提高文件读写的性能。在实际的使用过程中,文件上传、复制与下载效率无法得到根本性提升。相比之下,本发明的创新之处在于:
[0018]1、在存储与服务器资源之间,搭建P2P网络,实现同一文件的各存储分块在多个管理子节点的同时下载,下载效率得到大幅度提升。
[0019]2、创新地将一种准确、高效的预测算法——埃特金插值算法移植到云数据中心,将高次插值过程转化为线性插值的多次重复计算,时间复杂度低,计算简便,预测结果准确。将未来文件的预测使用情况,与文件的管理决策相结合,提高系统决策的智能性。
[0020]3、创新地提出闲置时段文件整理的概念,选择系统闲暇时段,根据文件使用的预测结果动态复制文件副本,通过消耗闲时的资源,降低用户未来请求文件资源时,存储资源的抢占可能,提高了管理文件的智能性。
【专利附图】

【附图说明】
[0021]图1为本发明提出的一种云数据中心文件管理方法流程图。
[0022]图2为本发明提出的存储环境架构图。
[0023]图3Α为本发明提出的存储路径V对应存储空间不意图。
[0024]图3Β为本发明提出的存储路径V划分示意图。
[0025]图4为本发明提出的文件副本整理流程图
【具体实施方式】 [0026]下面参照附图,对本发明的【具体实施方式】进行描述。
[0027]参见附图1,本发明总体构思主要包括如下步骤:
[0028]搭建存储环境设施与中控中心,文件上传与下载管理,文件使用情况统计,闲置时段文件整理。
[0029]其中,搭建存储环境设施与中控中心是该方案的基础。如附图2,云数据中心的所有存储资源均与一台或多台服务器相连。存储资源按照其与服务器的连接方式,划分为共享存储与本地存储两大类。所有与存储资源相连的服务器,作为存储管理子节点,管理与其直连的存储资源。所有存储资源与服务器间组成P2P网络,对外统一抽象为一个大的存储池。设置独立的服务器作为存储中控中心,管理整个系统中的存储资源,如附图2,服务器A为本地存储SI与3台共享存储的管理子节点,服务器C为管理整个存储池的中控中心。
[0030]文件上传与下载管理是该方案的核心创新点之一,通过在文件上传时为其建立文件索引表,提升文件的使用效率。具体步骤如下:
[0031]S1:使用Pastry算法,为上传的文件创建文件索引,存放在存储中控中心。每条文件索引被表示成一个(K,V)对,其中K为关键字,是文件的哈希值,V是该存储文件的存储路径,均以2b为基(2b指2的整数倍,一般b取1、2、3、4。选2b为基,便于步骤S2中对文件哈希表进行分割)。所有的(K,V)对组成一张大的文件索引哈希表,只要输入目标文件的K值,就可以从这张表中查出所有存储该文件的实际存放地址。
[0032]S2:然后,再将上面的文件哈希表分割成很多局部小块,按照特定的规则把这些小块的局部哈希表分布到系统中的所有管理子节点上,使得每个管理子节点负责维护其中的一块。管理子节点基于应用层定义的邻近性度量规则来分割整体的哈希表,获得离本地最近的地址,即每个管理子节点负责维护与其物理距离最近的局部存储小块。比如,当用户上传一个系统中不存在的大文件时,系统首先计算该文件的哈希值K,然后将该文件存放到某个存储上,存储路径为V。由于路径V对应一个较大的存储区域,如图3A所示,因为文件是以二进制方式存放在存储空间中的,所以存储路径V实际表示从存储空间的起始地址Vstart到终止地址Vend的一个存储范围,例如存储路径V可表示从地址Vstart (0x1234)到Vend(0x5678)的存储空间。
[0033]参见附图3B,该存储空间可以按照某种规则划分成η个较小的存储块,如将其平分成4块,并基于Pastry算法对文件索引表(K,V)进行拆分。按照邻近性度量规则将各小块存储块的路径制作成局部哈希表保存到与每一小块存储块距离最近的管理子节点中,局部哈希表中存放该小块存储块的路径、前后相邻小块存储块的路由信息。
[0034]管理子节点要维护自己的节点状态表,节点状态表记录的是除自身外其他管理子节点的状态。即如果其他管理子节点宕机,它对应的状态就会更新为宕机,然后在下载文件时,如果该文件需要通过宕机的管理子节点下载,就更换路径,转为从其他状态正常的管理子节点下载该数据。
[0035]管理子节点按ID从小到大顺序排列在一个逻辑环上,查询消息被路由到管理子节点ID和关键字在数值上最接近的管理子节点。每个管理子节点把查询消息转发给下一个管理子节点时,要保证这个管理子节点的ID和关键字的相同前缀至少要比当前管理子节点的ID和关键字的相同前缀长一个数位,即b个比特。如果找不到这样的管理子节点,消息将转发给前缀长度相同但是节点ID值更接近关键字的管理子节点。
[0036]S3:每个管理子节点都需要维护状态表:一张路由表,一个邻居节点集和一个叶子节点集。邻居节点集存放物理上距离该节点最近的节点,叶子节点集存放节点ID距离本节点最近的点。为了安全起见,本方案只扫描特定类型的文件。为了节省计算开支,可以只对特定大小,如500MB以上的文件建立文件索引。
[0037]S4:上传文件时,计算每个文件的Hash值,并比对文件索引表。如果文件索引中存在该文件的Hash值(证明存储池中存在该文件),则不做操作;如果表中没有,则将文件上传到存储池中,并更新索引表。
[0038]S5:用户发起文件下载请求后,系统根据文件的哈希值(Hash值,也是该文件的唯一标识),查询文件索引表,求得实际存储文件的寻址方式。当下载该文件时,用户分别从各个管理子节点下载相应的存储块。下载的每个存储块,根据局部哈希表中的路由信息,找到与自己相邻的存储块,通过拼装,组装成原始的大文件。由于本方案使用Pastry算法,存储池内部为P2P网络,所以在下载文件时,便可以做到同一文件的多个存储分块从彼此物理距离最近的多个管理子节点同时下载,效率得到大幅度提升。
[0039]下载文件的具体过程如下:[0040]1、先计算文件的哈希值k,在中控节点查找到对应的路径V ;
[0041]2、根据Pastry算法,查找V包含的每一小块存储路径保存在哪个管理子节点的局部哈希表中;
[0042]3、找到该小块存储所在的局部哈希表后,即在其所在的管理子节点中下载对应的小块存储;
[0043]4、待所有的小块存储均完成下载后,进行拼装,组合成原始的大文件。
[0044]文件使用情况统计为本方案提供有效的文件使用统计数据。如附表1,为每个文件设置“文件使用情况统计表”,当使用文件时,实时更新表中当天的复制频率(复制频率=复制次数-删除次数)与共享频率(共享频率=A服务器读写该文件的次数+B服务器读写该文件的次数+……=系统内所有服务器读写该文件次数的总和)。以η-1天为一个刷新周期,之后每天的数据均向前刷新。为了节省计算开支,可以只为特定大小,如500MB,以上的文件设置使用情况统计表。
[0045]附表1文件使用情况统计表
[0046]
【权利要求】
1.一种云数据中心文件管理方法,其特征在于: 所述云数据中心由存储中控中心、管理子节点和存储区域构成,所述方法包括: S1:为上传的文件创建文件索引表,存放在存储中控中心,所述文件索引表中的每条文件索引被表示成一个(K,V)记录,其中K是文件的哈希值,V是该存储文件的存储路径,对应由存储了所述文件的多个小块存储块组成的存储区域; S2:对文件索引表进行拆分,按照邻近性度量规则将各小块存储块的路径制作成局部哈希表保存到与每一小块存储块距离最近的管理子节点中; S3:用户发起文件下载请求后,先计算文件的哈希值K,在中控节点查找到对应的文件存储路径V,再查找V包含的每一小块存储块路径保存在哪个管理子节点的局部哈希表中,找到该小块存储块所在的局部哈希表后,通过其所在的管理子节点下载对应的文件数据,待所有的文件数据完成下载后,进行拼装,组合成用户请求下载的文件。
2.如权利要求1所述的方法,其特征在于: 所述每一小块存储块与其管理子节点通过点对点方式连接。
3.如权利要求1或2所述的方法,其特征在于: 局部哈希表中存放该小块存储块的路径、前后相邻小块存储块的路由信息。
4.如权利要求3所述的方法,其特征在于: 每个管理子节点还维护一个状态表,其中包括一张路由表,一个邻居节点集和一个叶子节点集,所述邻 居节点集存放物理上距离该节点最近的节点,所述叶子节点集存放节点ID距离本节点最近的点。
5.如权利要求4所述的方法,其特征在于: 所述状态表还记录了除自身外其他相邻管理子节点的状态,在下载文件时若根据状态表确定某些相邻管理子节点的状态为宕机,则更换下载路径,从其它状态正常的相邻管理子节点下载文件数据。
6.—种云数据中心文件管理方法,其特征在于: 所述云数据中心由存储中控中心、管理子节点和存储区域构成,所述方法包括: Sll:统计(n-1)天内云数据中心中存储的文件的复制频率Y,所述复制频率Y定义为该文件的复制次数减去该文件的删除次数; S12:基于统计的(η-1)天内的文件复制频率Y,使用埃特金插值公式计算第η天时该文件的复制频率预测值yn ; S13:基于第η天时该文件的复制频率预测值yn,确定需要预先配置的该文件的副本数量,在第η天用户请求下载该文件时直接分配给用户。
7.如权利要求6所述的方法,其特征在于: 所述确定需要预先配置的该文件的副本数量具体为:将计算获得的第η天时该文件的复制频率预测值In与预先设定的复制因子a相乘,所得到的值即为所述需要预先配置的该文件的副本数量X, 若该文件当前已有副本数量m小于X,则为该文件再配置副本x-m个,若该文件当前已有副本数量m大于X,则基于预先设定的删除因子b确定需要删除的副本数量为b* (m-x)。
8.如权利要求6或7所述的方法,其特征在于: 还包括统计文件共享频率的步骤和基于某一统计时间段内文件的共享频率变化对该文件执行相应的处理的步骤, 所述共享频率定义为云数据中心中所有管理子节点读写该文件次数的总和。
9.如权利要求8所述的方法,其特征在于: 所述基于某一统计时间段内文件的共享频率变化对该文件执行相应的处理的步骤具体为:若共享频率持续走低,则将文件从与管理子节点连接的共享存储区域中移动到与管理子节点连接的本地存储区域中,若共享频率为O,则将该文件从存储区域中删除。
10.如权利要求9所述的方法,其特征在于: 所述复制因子a取值为 0.3,所述删除因子b取值为0.2。
【文档编号】G06F17/30GK103544318SQ201310544589
【公开日】2014年1月29日 申请日期:2013年11月5日 优先权日:2013年11月5日
【发明者】吕广杰, 朱波 申请人:浪潮(北京)电子信息产业有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1