一种基于版本的数据存储方法

文档序号:8447516阅读:303来源:国知局
一种基于版本的数据存储方法
【技术领域】
[0001] 本发明设及分布式存储,特别设及一种基于版本的数据存储方法。
【背景技术】
[0002] 数据多版本的备份可W显著提高系统的运行效率,保证存储服务的可靠性W及整 个存储系统的负载均衡。传统的基于版本的数据存储方法都是针对存储特性为频繁读的网 络应用,而交互性的网络应用的用户数量众多,位置分布广泛,且单次上传数据量小,但上 传次数频繁。传统的云存储基于版本的数据存储方法在支持该一类网络应用时,衡量数据 节点的标准单一,而且处理海量数据传输请求的同时会频繁进行备份版本的调整,该会导 致用户使用体验的降低及服务器端有限计算资源的浪费。

【发明内容】

[0003] 为解决上述现有技术所存在的问题,本发明提出了一种基于版本的数据存储方 法,包括:
[0004] W定长数据块划分用户的数据资源,并存储于分布式存储系统的数据节点中;
[0005] 用户通过访问分布式存储系统的主节点获得数据节点的存储信息,所述主节点存 储数据备份版本保持最后更新一致性情况下的属性信息,并设置多个备用主节点进行属性 信息的备份;
[0006] 利用与所述主节点分别相通信的一致性节点来保持系统内数据备份版本的一致 性,并将已完成同步的备份版本的属性信息提交给主节点,使用户访问到最后更新的数据。
[0007] 优选地,当用户对已有数据资源进行写操作时,用户连接到主节点,发送写数据请 求,主节点返回匹配的属性信息,用户根据主节点返回的信息访问距离用户位置最近且可 用的数据节点并发送写数据请求,数据节点传输用户请求的数据并更新属性信息到一致性 节点,一致性节点协调各数据节点保持备份版本数据一致性,一致性节点将更新的属性信 息传输到主节点,主节点返回更新结果,每次用户写资源后,由一致性节点维护所有备份版 本资源的数据一致性,主节点只保存已确定更新一致性后的属性信息;当用户上传数据资 源时,用户连接到主节点,发送上传数据资源的请求信息,主节点返回距离用户位置最近且 可用的数据节点信息,并将最新的属性信息发送到一致性节点,用户根据主节点返回的信 息上传资源到数据节点,数据节点向用户返回处理的结果,并将属性信息更新到分布式存 储系统的多个一致性节点,一致性节点根据版本策略备份数据到适当的数据节点,并更新 备份版本信息到主节点。
[000引优选地,当需要调整已备份的版本的位置时,该方法包括W下步骤::
[0009] 步骤1,在侦测到数据节点存储负载率达到预设最高阔值的情况下,一致性节点开 始动态调整备份版本的位置;
[0010] 步骤2,获取存储系统内所有数据节点的集合A; {Ai,A2,As,…A。},计算需要调整 版本的数据节点要减少的存储量Tea;Tca=化a? (y- ?),
[0011] 其中y为版本调整前节点的存储负载率,《为版本调整后该节点的存储负载率, Dca为该数据节点的存储总量;若存在集合At;{Atl,At2,At3,…AJ,At为A的子集,使得下 式成立:
[001 引 Ati_ca+Tca ? nAti_ca ? y
[001 引 At2ca+Tca ? ri A t2ca ? y
[0014] At3_ca+Tca ? n 3《A t3_ca ? y
[0015] ? ? ?
[0016] Atn_ca+Tca ? n A tn_ca ? y
[0017] 则返回含有最多元素的集合At,并对备份数据进行调整,否则结束备份版本调整; [001引其中AiCa为节点Ai的存储量,n1,ru,ns…,n。为小于或等于1的系数,且 口1+口2+口3...+口"= 1 ;
[0019] 步骤3,将存储负载率到达预设最高阔值的数据节点上所有备份版本资源依据完 整度建立由小到大的链表,所述完整度的加权计算方式如下:
[0020] I = Count-R
[0021] I代表备份版本的完整度,R为数据节点的完整度,Count为相应备份版本被访问 的次数;
[0022] 步骤4,基于步骤3建立的链表,对链表首部的资源依据如下策略进行调整,直到 待调整数据节点的存储负载率处于可容许范围内:
[002引 W步骤2确定的集合MAti,At2,At3,…人,。}作为节点集合,W集合中数据节点存 储负载率达到预设最高阔值作为终结条件,首先在与待调整数据具有同类型且对于该文件 用户价值度最高的节点创建新的备份版本,同时删除原有版本;若没有与待调整数据同类 型的数据节点,则选择任意有空余空间的节点,当调整备份版本节点的负载率处于可容许 范围时,停止版本调整;
[0024]步骤5,数据节点返回更新操作的信息到一致性节点,一致性节点传输已保持一致 性数据节点信息到主节点,更新主节点的属性信息。
[002引本发明相比现有技术,具有W下优点:
[0026] 本发明提出了一种备份方法,不仅提高用户的使用体验,同时保证存储系统的健 壮性和保持各数据节点负载的均衡。
【附图说明】
[0027] 图1是根据本发明实施例的基于版本的数据存储方法的流程图。
【具体实施方式】
[002引下文与图示本发明原理的附图一起提供对本发明一个或者多个实施例的详细描 述。结合该样的实施例描述本发明,但是本发明不限于任何实施例。本发明的范围仅由权 利要求书限定,并且本发明涵盖诸多替代、修改和等同物。在下文描述中阐述诸多具体细节 W便提供对本发明的透彻理解。出于示例的目的而提供该些细节,并且无该些具体细节中 的一些或者所有细节也可W根据权利要求书实现本发明。
[0029] 本发明的一方面提供了一种基于版本的数据存储方法。图1是根据本发明实施例 的基于版本的数据存储方法流程图。
[0030] 该方法基于=层架构的分布式存储系统。该系统模型由一个逻辑主节点,多个一 致性节点及大量的数据节点组成。主节点是属性信息服务器,用户通过访问主节点来获得 数据节点的存储信息。为了防止主节点单点失效的情况,系统内可W有多个备用主节点进 行属性信息的备份。主节点只存储数据备份版本保持最后更新一致性情况下的属性信息, 为用户访问数据一致性提供高可靠的保证。一致性节点负责保持系统内数据备份版本的一 致性,它将已完成同步的备份版本的属性信息提交给主节点,使用户只可W访问到最后更 新的数据。数据节点是数据存储服务器,存储用户的数据资源,理论上可W分布在世界上任 何适宜的地点。考虑到读写型网络应用数据资源的特点多为小文件,用户经常使用的数据 一般不大于30M,本系统W32M的定长数
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1