CN102984280B - 针对社交类云存储网络应用的数据备份系统和方法 - Google Patents
针对社交类云存储网络应用的数据备份系统和方法 Download PDFInfo
- Publication number
- CN102984280B CN102984280B CN201210551527.4A CN201210551527A CN102984280B CN 102984280 B CN102984280 B CN 102984280B CN 201210551527 A CN201210551527 A CN 201210551527A CN 102984280 B CN102984280 B CN 102984280B
- Authority
- CN
- China
- Prior art keywords
- data
- node
- user
- copy
- nodes
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 238000013500 data storage Methods 0.000 claims description 4
- 230000001360 synchronised effect Effects 0.000 claims description 2
- 238000004364 calculation method Methods 0.000 abstract description 5
- 238000005303 weighing Methods 0.000 abstract 1
- 238000010586 diagram Methods 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000000903 blocking effect Effects 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- BULVZWIRKLYCBC-UHFFFAOYSA-N phorate Chemical class CCOP(=S)(OCC)SCSCC BULVZWIRKLYCBC-UHFFFAOYSA-N 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
一种针对社交类云存储网络应用的数据备份系统和方法。该系统由一个逻辑Master节点,多个Consistence节点及大量的Data节点组成。所述数据备份方法主要包括:用户上传数据资源、创建副本和负载调整。本发明针对社交类云存储网络应用的特点,以多种参数的加权计算作为衡量数据节点或数据文件优劣的标准,对用户访问进行预测,保证了用户数据资源可以被高效地利用,同时以其数据节点负载率作为进行负载调整的判断依据,尽量减少云端服务器在用户访问频繁的情况下进行负载调整的次数,保证云端服务器计算资源的高效利用,使用户的使用体验得到提升。
Description
技术领域
本发明属于数据存储领域,具体涉及一种针对社交类云存储网络应用的数据备份系统和方法。
背景技术
云存储数据备份技术的实施,可以显著提高系统的运行效率,保证存储服务的可靠性以及整个云存储系统的负载均衡。传统的数据备份方法,都是针对存储特性为频繁读的网络应用,且云端服务器会进行经常性的负载调整,如:GFS的数据备份方法,新副本会放置在低于平均硬盘使用率的Chunk服务器上,每个Chunk服务器会限制一定时间间隔内副本的创建数量,Master节点周期性地对数据进行负载均衡调整,新数据位置选择的策略与创建策略相同;Hadoop的数据备份方法基于机架感知策略,一个副本放置在本地节点上,一个副本放置在本地机架的不同节点上,一个副本放置在不同机架的节点上,副本的调整,根据对于特定文件的访问请求记录,适当的增加副本来满足访问请求。
而网络上日趋流行的社交类云存储网络应用在存储方面则具有小数据量且读写均频繁的特点。在海量的数据读写访问请求下,云端服务器的有限计算能力往往是保证用户使用体验的关键。社交类云存储网络应用的用户数量众多,地理位置分布广泛,且单次上传数据量小,但上传次数频繁。该类网络应用的用户对资源的使用具有一定的局部性,逻辑上只访问自己社交范围内的资源,用户往往偏向于访问与自己上传资源类似的资源,且对访问延迟时间与数据的一致性有较高的要求。
传统的云存储数据备份方法在支持社交类网络应用时,衡量数据节点的标准单一,且没有针对用户访问预测的副本创建机制,而且处理海量数据传输请求的同时会频繁进行负载的调整,这会导致用户使用体验的降低及服务器端有限计算资源的浪费。
发明内容
针对上述问题,本发明提供了一种针对社交类云存储网络应用的数据备份方法,目的是以对数据节点的衡量及用户访问的预测为基础,放置有限的数据副本,提高用户的使用体验,同时保证云存储系统的健壮性,进行尽量少的负载调整活动,以避免云服务器端有限的计算资源的浪费,同时保持各数据节点负载的均衡。
本发明采取以下技术方案:
本发明基于三层架构的云存储分布式文件系统模型,该系统模型由一个逻辑Master节点,多个Consistence节点及大量的Data节点组成。
Master节点是元数据服务器,用户通过访问Master节点来获得Data节点的存储信息。为了防止Master节点单点失效的情况,系统内可以有多个辅助Master节点进行元数据的备份。Master节点只存放数据副本保持最后更新一致性情况下的元数据,为用户访问数据一致性提供高可靠的保证。Consistence节点负责保持系统内数据副本的一致性,它将已同步过副本的元数据信息提交给Master节点,使用户只可以访问到最后更新的数据。Data节点是数据存储服务器,存储用户的数据资源,理论上可以分布在世界上任何适宜的地点。考虑到读写频繁网络应用数据资源的特点多为小文件,用户经常使用的数据一般不大于30M,以32M的定长数据块来划分用户的数据资源。
当用户上传数据资源时,用户连接到Master节点,发送上传数据资源的请求信息,Master节点返回距离用户地理位置最近且可用的Data节点信息,用户根据Master节点返回的信息上传资源到Data节点,Master节点更新匹配用户需求的Data节点信息到Consistence节点,Data节点向用户返回处理的结果,并将元数据信息更新到Consistence节点,Consistence节点根据副本策略备份副本数据到适当的Data节点,并更新副本信息到Master节点;
当用户对已有数据资源进行读操作时,用户连接到Master节点,发送读数据请求,Master节点返回匹配的元数据信息,用户根据Master节点返回的信息访问Data节点并发送读数据请求,Data节点传输用户请求的数据。
当用户对已有数据资源进行写操作时,用户连接到Master节点,发送写数据请求,Master节点返回匹配的元数据信息,用户根据Master节点返回的信息访问Data节点并发送写数据请求,Data节点传输用户请求的数据并更新实际放置用户数据资源的Data节点信息到Consistence节点,Consistence节点协调各Data节点保持副本数据一致性,Consistence节点将更新的元数据传输到Master节点,Master节点返回更新结果。每次用户写资源后,由Consistence节点维护所有副本资源的数据一致性,Master节点只保存已确定更新一致性后的元数据。
本发明所述的数据备份方法包括以下步骤:
步骤1,用户上传数据资源。
步骤2,Master节点返回存储负载率低于100%且距离用户位置最近的Data节点信息给用户,用户在该节点放置数据资源,Consistence节点检测放置该数据资源的Date节点的存储负载率是否达到90%,若达不到90%,直接跳到步骤3,进行副本创建;若达到90%,则进行负载调整。
负载调整方法主要包括以下内容:
在Data节点存储负载率达到90%的情况下,Consistence节点开始动态调整数据资源的位置;
在负载调整策略可行的情况下,将存储负载率到达90%的Data节点上所有数据资源依据健康度建立由小到大的链表;
基于存储平衡预测方法返回的节点集合,对链表内的资源依次进行调整,当节点集合中有Data节点的负载率达到90%则屏蔽该Data节点,继续对链表内资源进行调整,直到待调整Data节点的存储负载率低于80%;
Data节点返回更新操作的信息到Consistence节点,Consistence节点传输已保持一致性Data节点信息到Master节点,更新Master节点的元数据信息。
步骤3,创建副本。
副本创建方法主要包括以下内容:
Consistence节点获取到由Master节点发送的元数据信息与用户地理位置信息;
创建副本;
放置副本;
副本元数据更新。
步骤4,创建副本后,检测放置该副本的Date节点的存储负载率是否达到90%,若达到90%则进行负载调整,否则结束本次数据备份过程。
本发明的有益效果是:针对社交类云存储网络应用的特点,以多种参数的加权计算作为衡量数据节点或数据文件优劣的标准,对用户访问进行预测,保证了用户数据资源可以被高效地利用,同时以其数据节点负载率作为进行负载调整的判断依据,尽量减少云端服务器在用户访问频繁的情况下进行负载调整的次数,保证云端服务器计算资源的高效利用,使用户的使用体验得到提升。
附图说明
图1为数据备份系统结构示意图;
图2为数据备份流程图;
图3为副本创建流程图;
图4为负载调整流程图。
具体实施方式
针对社交类云存储网络应用的数据备份系统结构示意图如图1所示,该系统由一个逻辑Master节点,多个Consistence节点及大量的Data节点组成。
假如节点集群内有5个Data节点,每个Data节点的详细资料如表1所示:
表1 Data节点详细信息表
Data节点编号 | 位置 | 带宽(M) | 容量(G) |
1 | (100,100) | 10 | 10000 |
2 | (500,500) | 100 | 20000 |
3 | (1000,1000) | 10 | 10000 |
4 | (100,500) | 1000 | 50000 |
5 | (700,1000) | 100 | 10000 |
参见图2,整个数据备份流程包含的步骤如下:
步骤1,用户上传数据资源。
步骤2,Master节点返回存储负载率低于100%且距离用户位置最近的Data节点信息给用户,用户在该节点放置数据资源,Consistence节点检测放置该数据资源的Date节点的存储负载率是否达到90%,若达不到90%,直接跳到步骤3,进行副本创建;若达到90%,则进行负载调整。
步骤3,创建副本。
步骤4,创建副本后,检测放置该副本的Date节点的存储负载率是否达到90%,若达到90%则进行负载调整,否则结束本次数据备份过程。
参见图3,副本创建方法如下:
(1)Consistence节点获取到由Master节点发送的元数据信息与用户地理位置信息。
例如:用户A上传数据到云存储服务器端,Consistence节点获取到Master节点发送的元数据信息及用户的位置信息(200,200)。
(2)Consistence节点计算各个Data节点对于用户A的废弃度。
Data节点废弃度的加权计算公式如下:
为数据节点的废弃度,U_D_Distance为用户与数据节点之间距离,为用户与数据节点之间距离的加权比,D_Bandwidth为数据节点接入网络的带宽,β为数据节点网络带宽的加权比。
考虑到用户与数据节点之间网络中路由转发数据或网络阻塞带来的开销不确定,用户端的接收能力也不固定,设定β=30%;考虑到数据节点与用户之间直线距离越近,数据传输的网络延迟往往越小,设定α=70%。数据节点的废弃度越小,数据节点对于用户的使用价值越大;反之,越小。
表1所示集群内各个Data节点相对于用户A废弃度的计算结果如表2所示:
表2 Data节点废弃度列表
节点编号 | 废弃度 |
1 | 96 |
2 | 267 |
3 | 789 |
4 | -79 |
5 | 630 |
(3)创建副本
Consistence节点维护多个上传相同类型数据资源用户位置的数据集合S{S1,S2,S3...Sn},系统内所有Data节点信息的数据集合D{D1,D2,D3...Dm}。
当用户位置的数据集合为空时,新加入元素St,则依次扫描Data节点位置的数据集合,选取废弃度最低的Data节点作为副本放置候选的节点。若该数据节点存放有副本的原始数据,则选择废弃度最高的Data节点作为副本放置候选的节点。若废弃度最低的Data节点与废弃度最高的Data节点为同一节点,则随机选择一个Data节点作为副本放置候选节点。
当用户位置的数据集合不空时,且只有一个Data节点Dw作为该集合的副本放置节点,Dw上不存在St的原始数据,则选择Dw为新加入元素St的副本放置候选节点。若该数据节点存放有St的原始数据,则从D不包括Dw的集合中选择废弃度最低的Data节点作为副本放置候选的节点。
当用户位置的数据集合不空时,且有多个Data节点{Da,Db,Dc...}作为该集合的副本放置节点,依次扫描{Da,Db,Dc...}元素并做如下处理,选择对于新加入元素St的健康度最优的Dt1作为副本放置候选节点,选择对于新加入元素St的健康度最差的Dt2作为副本放置候选节点。若Dt1与Dt2为相同节点,且不存放有St的原始数据,则只存放一份副本。若Dt1与Dt2为相同节点,且存放有St的原始数据,则在不包含Dt1与Dt2的集合中随机选择一个节点作为数据存放节点。若Dt1与Dt2为不同节点,Dt1存放有St的原始数据,则只选Dt2为副本放置候选节点。若Dt1与Dt2为不同节点,Dt2存放有St的原始数据,则只选Dt1为副本放置候选节点。
以用户A为例说明上述副本创建过程。用户A上传数据资源后,发现用户位置的数据集合为空时,则选择废弃度最低的Data节点4作为副本放置候选节点,若Data节点4存放有该副本的原始数据,则选择废弃度最高的Data节点3作为副本放置后选节点。若废弃度最低的Data节点与废弃度最高的Data节点为同一节点,则随机选择一个Data节点作为副本放置候选节点。若用户A上传数据资源后,发现用户位置的数据集合不为空时,且只有Data节点4为该计划的副本放置节点,若Data节点4不存在上传数据的原始数据,则选择Data节点4作为副本放置候选节点。若Data节点4存放有上传数据的原始数据,则选择除Data节点4外废弃度最低的Data节点1作为副本放置候选节点。若用户A上传数据资源后,发现用户位置的数据集合不为空时,包括Data节点1,Data节点2,Data节点3。则选择废弃度最低的Data节点1与废弃度最高的Data节点2作为副本放置候选节点。若Data节点1或Data节点3中有一个节点存放有上传数据的原始数据,则另一个节点为副本放置候选节点。若所选废弃度最低的Data节点与废弃度最高的Data节点相同节点,且不存放有上传数据的原始数据,则只存放一份副本在所选Data节点中。若所选废弃度最低的Data节点与废弃度最高的Data节点相同节点,且存放有上传数据的原始数据,则在集合中屏蔽掉该Data节点,随机选择一个Data节点作为副本放置候选节点。
(4)放置副本
检查副本放置候选节点的存储负载率是否低于100%,若低于100%则选择该候选节点为副本放置节点,在该节点放置副本;否则对St屏蔽掉该候选节点重新返回(3),继续寻找满足条件的数据节点作为副本放置节点;返回两个副本放置候选节点时,若存在至少一个候选节点的存储负载率低于100%则结束探寻,在符合条件的Data节点上放置副本。
(5)副本元数据更新
Data节点返回操作结果到Consistence节点,Consistence节点将集合S的数据信息更新,返回最新的元数据信息到Master节点。
参见图4,负载调整方法如下:
(1)在Data节点存储负载率达到90%的情况下Consistence节点开始动态调整数据资源的放置。
例如,如果Data节点1的存储负载率达到了90%,Consistence节点开始动态调整数据资源的位置。
(2)预测将节点存储负载率由90%降到80%的可能性,这里采用的是存储平衡预测方法。
存储平衡预测方法的步骤如下:
设云存储系统内所有数据节点的集合为A{A1,A2,A3...An},μ为负载调整前某一节点的存储负载率,ω为负载调整后该节点的存储负载率,D_Capacity为该数据节点的存储总量,T_Capacity为需要调整的数据节点要减少的存储量,则:
T_Capacity=D_Capacity·(μ-ω)
若存在集合At{At1,At2,At3...Atn},At为A的子集,使得以下式子成立,则认为系统内经过负载调整可以达到存储负载率的平衡;否则,认为系统没有进行负载调整的必要:
At1_Capacity+T_Capacity·η1≤At1_All_Capacity·μ
At2_Capacity+T_Capacity·η2≤At2_All_Capacity·μ
At3_Capacity+T_Capacity·η3≤At3_All_Capacity·μ
Atn_Capacity+T_Capacity·ηn≤Atn_All_Capacity·μ
η1+η2+η3...+ηn=1
η1,η2,η3...,ηn为小于或等于1的数,,Ati_Capacity为At集合中Ati(i=1,2,…,n)节点的已使用存储容量,Ati_All_Capacity为At集合中Ati节点的总存储容量。
若负载调整策略可行,则返回满足条件情况下包含最多Data节点的集合At{At1,At2,At3...Atn};若不可行则结束负载调整。
若Data节点1的存储使用量达到总容量的90%时,运用此预测方法预测使Data节点1的存储负载率降到80%的可行性,假如各Data节点的使用情况如表3所示。
表3 Data节点负载列表
数据节点编号 | 容量(G) | 已使用容量(G) |
1 | 10000 | 9000 |
2 | 20000 | 5000 |
3 | 10000 | 8000 |
4 | 50000 | 10000 |
5 | 10000 | 8000 |
Data节点2在存储负载率达到总容量的90%前还可以放置13000G的数据;
Data节点3在存储负载率达到总容量的90%前还可以放置1000G的数据;
Data节点4在存储负载率达到总容量的90%前还可以放置35000G的数据;
Data节点5在存储负载率达到总容量的90%前还可以放置1000G的数据。
将这些数据加起来的总和为50000G,大于Data节点1存储使用率由90%降到80%需要移动的数据量1000G,则返回的元素集合包含Data节点2,Data节点3,Data节点4,Data节点5。
(3)在负载调整策略可行的情况下,将存储负载率到达90%的Data节点上所有数据资源依据健康度建立由小到大的链表。
数据资源健康度的加权计算公式如下:
为数据资源的健康度,为数据节点的废弃度,Copy_Use_Count为相应数据资源被使用的次数。
例如,若Data节点1有10个文件,5个文件属于用户B,5个文件属于用户C,Data节点对于用户B与用户C的废弃度及文件的使用次数如表4所示。
表4 文件废弃度列表
文件编号 | 节点对于文件所有者的废弃度 | 文件使用次数 |
1 | 200(用户B) | 1000 |
2 | 200(用户B) | 400 |
3 | 200(用户B) | 440 |
4 | 200(用户B) | 752 |
5 | 200(用户B) | 420 |
6 | 500(用户C) | 753 |
7 | 500(用户C) | 777 |
8 | 500(用户C) | 852 |
9 | 500(用户C) | 6000 |
10 | 500(用户C) | 322 |
则各文件的健康度如表5所示。
表5 文件健康度列表
文件编号 | 健康度 |
1 | 800 |
2 | 200 |
3 | 240 |
4 | 552 |
5 | 220 |
6 | 253 |
7 | 277 |
8 | 352 |
9 | 5500 |
10 | -178 |
各个文件依据健康度由小到大的排列如表6所示。
表6 文件健康度排序表
序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
文件编号 | 10 | 2 | 5 | 3 | 6 | 7 | 8 | 4 | 1 | 9 |
(4)基于表6所示的链表,对链表内的资源依据如下策略进行调整,直到数据节点的存储负载率低于80%。
以(2)确定的集合At{At1,At2,At3...Atn}作为节点集合,以数据节点存储负载达到90%作为终结条件。依据如下的优先权放置数据资源,同时删除原有数据:包含有同类型数据且废弃度低的Data节点,包含有同类型数据的Data节点,任意有空余空间的Data节点。
例如,此时的集合At{At1,At2,At3...Atn}包含Data节点2,Data节点3,Data节点4和Data节点5。若Data节点2与Data节点3包含有同类型数据,且Data节点3对于对应文件的用户有较低的废弃度,则放置数据的优先级如下:Data节点3,Data节点2,Data节点4和Data节点5。当集合At{At1,At2,At3...Atn}中有Data节点的负载率达到90%,则将该Data节点从集合中删除,继续进行数据的放置。当被调整数据节点的负载率低于或等于80%时停止负载调整。
(5)Data节点返回更新操作的信息到Consistence节点,Consistence节点传输已保持一致性的Data节点信息到Master节点,更新Master节点的元数据信息。
Claims (3)
1.一种针对社交类云存储网络应用的数据备份系统,其特征在于,包括:
Master节点是元数据服务器,用户通过访问Master节点来获得Data节点的存储信息;为了防止Master节点单点失效的情况,系统内有多个辅助Master节点进行元数据的备份;
Consistence节点,负责保持系统内数据副本的一致性,它将已同步过副本的元数据信息提交给Master节点,使用户只可以访问到最后更新的数据,系统内有多个Consistence节点;
Data节点是数据存储服务器,存储用户的数据资源;
当用户上传数据资源时,用户连接到Master节点,发送上传数据资源的请求信息,Master节点返回距离用户地理位置最近且可用的Data节点信息,用户根据Master节点返回的信息上传资源到Data节点,Master节点更新匹配用户需求的Data节点信息到Consistence节点,Data节点向用户返回处理的结果,并将实际放置用户数据资源的Data节点信息更新到Consistence节点,Consistence节点根据副本策略备份副本数据到适当的Data节点,并更新副本信息到Master节点;
当用户对已有数据资源进行读操作时,用户连接到Master节点,发送读数据请求,Master节点返回匹配的元数据信息,用户根据Master节点返回的信息访问Data节点并发送读数据请求,Data节点传输用户请求的数据;
当用户对已有数据资源进行写操作时,用户连接到Master节点,发送写数据请求,Master节点返回匹配的元数据信息,用户根据Master节点返回的信息访问Data节点并发送写数据请求,Data节点传输用户请求的数据并更新实际放置用户数据资源的Data节点信息到Consistence节点,Consistence节点协调各Data节点保持副本数据一致性,Consistence节点将更新的元数据传输到Master节点,Master节点返回更新结果,每次用户写资源后,由Consistence节点维护所有副本资源的数据一致性,Master节点只保存已确定更新一致性后的元数据。
2.一种针对社交类云存储网络应用的数据备份方法,其特征在于包括以下步骤:
步骤1,用户上传数据资源;
步骤2,Master节点返回存储负载率低于100%且距离用户位置最近的Data节点信息给用户,用户在该Data节点放置数据资源,Consistence节点检测放置该数据资源的Data节点的存储负载率是否达到90%,若达不到90%,直接跳到步骤3,进行副本创建;若达到90%,则按以下方法进行负载调整:
在Data节点存储负载率达到90%的情况下,Consistence节点开始动态调整数据资源的位置;
采取存储平衡预测方法预测将节点存储负载率由90%降到80%的可能性,若负载调整可行,返回接收Data节点的集合At{At1,At2,At3...Atn};若不可行,则结束负载调整;
若经预测判断负载调整可行,对存储负载率达到90%的Data节点上所有数据资源按下式进行健康度计算:
其中,l为数据资源的健康度,为Data节点的废弃度,Copy_Use_Count为相应数据资源被使用的次数;
依据健康度l建立由小到大的链表;
按以下方法对所建链表内的资源依次进行调整,直到待调整Data节点的存储负载率低于80%:以集合At{At1,At2,At3...Atn}作为节点集合,以集合中Data节点存储负载率达到90%作为终结条件,依据如下的优先权放置调整的数据资源,同时删除原有数据资源:包含有同类型数据且废弃度低的Data节点,包含有同类型数据的Data节点,任意有空余空间的Data节点;
Data节点返回更新操作的信息到Consistence节点,Consistence节点传输已保持一致性的Data节点信息到Master节点,更新Master节点的元数据信息;
步骤3,按以下方法创建副本:
Consistence节点获取由Master节点发送的元数据信息与用户地理位置信息;
Consistence节点按下式计算各个Data节点相对于用户的节点废弃度:
其中,为Data节点的废弃度,α为用户与Data节点之间距离的加权比,D_Bandwidth为Data节点接入网络的带宽,β为Data节点网络带宽的加权比,U_D_Distance为用户与Data节点之间距离,按下式计算:
其中,D_Location.x为Data节点位置在平面地图上的横坐标,U_Location.x为用户位置在平面地图上的横坐标,D_Location.y为Data节点位置在平面地图上的纵坐标,U_Location.y为用户位置在平面地图上的纵坐标;
Consistence节点维护多个上传相同类型数据资源用户位置的数据集合S{S1,S2,S3...Sn},和系统内所有Data节点信息的数据集合D{D1,D2,D3...Dm};
当用户上传资源时,若该资源类型的用户位置数据集合为空,新加入元素St,则依次扫描Data节点位置的数据集合,选取废弃度最低的Data节点作为副本放置候选节点;若该Data节点存放有副本的原始数据,则选择废弃度最高的Data节点作为副本放置候选节点;若废弃度最低的Data节点与废弃度最高的Data节点为同一节点,则随机选择一个Data节点作为副本放置候选节点;
当用户上传资源时,若该资源类型的用户位置数据集合不空,且只有一个Data节点Dw作为该集合的副本放置节点,Dw上不存在St的原始数据,则选择Dw为新加入元素St的副本放置候选节点;若该Data节点存放有St的原始数据,则从D不包括Dw的集合中选择废弃度最低的Data节点作为副本放置候选节点;当该资源类型的用户位置数据集合不空,且有多个Data节点{Da,Db,Dc...}作为该集合的副本放置节点,依次扫描{Da,Db,Dc...}并做如下处理:选择对于新加入元素St的废弃度最低的Dt1作为副本放置候选节点,选择对于新加入元素St的废弃度最高的Dt2作为副本放置候选节点;若Dt1与Dt2为相同节点,且不存放有St的原始数据,则只存放一份副本;若Dt1与Dt2为相同节点,且存放有St的原始数据,则在不包含Dt1与Dt2的集合中随机选择一个节点作为副本放置候选节点;若Dt1与Dt2为不同节点,Dt1存放有St的原始数据,则只选Dt2为副本放置候选节点;若Dt1与Dt2为不同节点,Dt2存放有St的原始数据,则只选Dt1为副本放置候选节点;
检查副本放置候选节点的存储负载率是否低于100%,若低于100%,则选择该候选节点为副本放置节点,在该节点放置副本;否则,对St屏蔽掉该候选节点并返回,继续寻找满足条件的Data节点作为副本放置节点;返回两个副本放置候选节点时,若存在至少一个候选节点的存储负载率低于100%,则结束探寻,在符合条件的Data节点上放置副本;
Data节点返回操作结果到Consistence节点,Consistence节点将集合S的数据信息更新,返回最新的元数据信息到Master节点;
步骤4,创建副本后,检测放置该副本的Data节点的存储负载率是否达到90%,若达到90%则进行负载调整;否则,结束本次数据备份过程。
3.根据权利要求2所述的针对社交类云存储网络应用的数据备份方法,其特征在于:步骤2所述的采取存储平衡预测方法预测节点存储负载率由90%降到80%可能性的方法,具体包括以下步骤:
设云存储系统内所有Data节点的集合为A{A1,A2,A3...An},μ为负载调整前某一节点的存储负载率,ω为负载调整后该节点的存储负载率,D_Capacity为该Data节点的存储总量,T_Capacity为需要调整的Data节点要减少的存储量,则:
T_Capacity=D_Capacity·(μ-ω)
若存在集合At{At1,At2,At3...Atn},At为A的子集,使得以下式子成立:
At1_Capacity+T_Capacity·η1≤At1_All_Capacity·μ
At2_Capacity+T_Capacity·η2≤At2_All_Capacity·μ
At3_Capacity+T_Capacity·η3≤At3_All_Capacity·μ
.
.
.
Atn_Capacity+T_Capacity·ηn≤Atn_All_Capacity·μ
η1+η2+η3...+ηn=1
η1,η2,η3...,ηn为小于或等于1的数,Ati_Capacity为At集合中Ati(i=1,2,…,n)节点的已使用存储容量,Ati_All_Capacity为At集合中Ati节点的总存储容量;
则认为系统内经过负载调整可以达到存储负载率的平衡,并返回满足条件情况下包含最多Data节点的集合;否则,认为系统没有进行负载调整的必要。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210551527.4A CN102984280B (zh) | 2012-12-18 | 2012-12-18 | 针对社交类云存储网络应用的数据备份系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201210551527.4A CN102984280B (zh) | 2012-12-18 | 2012-12-18 | 针对社交类云存储网络应用的数据备份系统和方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102984280A CN102984280A (zh) | 2013-03-20 |
CN102984280B true CN102984280B (zh) | 2015-05-20 |
Family
ID=47858013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201210551527.4A Expired - Fee Related CN102984280B (zh) | 2012-12-18 | 2012-12-18 | 针对社交类云存储网络应用的数据备份系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102984280B (zh) |
Families Citing this family (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104468651B (zh) * | 2013-09-17 | 2019-09-10 | 南京中兴新软件有限责任公司 | 分布式多副本数据存储方法及装置 |
WO2016032634A1 (en) | 2014-08-29 | 2016-03-03 | Cynny Spa | Systems and methods to organize a computing system having multiple computers, distribute computing tasks among the computers, and maintain data integrity and redundancy in the computing system |
US9928149B2 (en) | 2014-08-29 | 2018-03-27 | Cynny Space Srl | Systems and methods to maintain data integrity and redundancy in a computing system having multiple computers |
CN104580428B (zh) * | 2014-12-27 | 2018-09-04 | 北京奇虎科技有限公司 | 一种数据路由方法、数据管理装置和分布式存储系统 |
CN104516795A (zh) * | 2015-01-15 | 2015-04-15 | 浪潮(北京)电子信息产业有限公司 | 一种数据存取方法及系统 |
CN104539730B (zh) * | 2015-01-16 | 2018-01-02 | 浙江大学 | 一种hdfs中面向视频的负载均衡方法 |
CN104767822A (zh) * | 2015-04-21 | 2015-07-08 | 成都影泰科技有限公司 | 一种基于版本的数据存储方法 |
CN104836851A (zh) * | 2015-04-21 | 2015-08-12 | 成都影泰科技有限公司 | 一种数据备份方法 |
GB2553784B (en) * | 2016-09-13 | 2019-02-06 | Advanced Risc Mach Ltd | Management of log data in electronic systems |
CN109309694A (zh) * | 2017-07-27 | 2019-02-05 | 杭州海康威视数字技术股份有限公司 | 一种数据存储的方法和系统 |
CN107566496A (zh) * | 2017-09-07 | 2018-01-09 | 郑州云海信息技术有限公司 | 一种hadoop数据存储方法和装置 |
CN109492536B (zh) * | 2018-10-12 | 2020-12-04 | 大唐高鸿信息通信(义乌)有限公司 | 一种基于5g架构的人脸识别方法及系统 |
CN113422789B (zh) * | 2020-03-26 | 2022-11-25 | 山东管理学院 | 一种网络计算环境下的服务部署方法及系统 |
CN112073496B (zh) * | 2020-09-01 | 2021-09-10 | 武汉理工大学 | 地理分布式云中基于负载均衡的数据放置方法 |
CN114827180B (zh) * | 2022-06-22 | 2022-09-27 | 蒲惠智造科技股份有限公司 | 云端数据分布式存储的分配方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187931A (zh) * | 2007-12-12 | 2008-05-28 | 浙江大学 | 分布式文件系统多文件副本的管理方法 |
CN101751309A (zh) * | 2009-12-28 | 2010-06-23 | 北京理工大学 | 数据网格中一种优化的副本分布方法 |
CN102023816A (zh) * | 2010-11-04 | 2011-04-20 | 天津曙光计算机产业有限公司 | 一种对象存储系统的对象存放策略和访问方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8234518B2 (en) * | 2009-07-21 | 2012-07-31 | Vmware, Inc. | Method for voting with secret shares in a distributed system |
-
2012
- 2012-12-18 CN CN201210551527.4A patent/CN102984280B/zh not_active Expired - Fee Related
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101187931A (zh) * | 2007-12-12 | 2008-05-28 | 浙江大学 | 分布式文件系统多文件副本的管理方法 |
CN101751309A (zh) * | 2009-12-28 | 2010-06-23 | 北京理工大学 | 数据网格中一种优化的副本分布方法 |
CN102023816A (zh) * | 2010-11-04 | 2011-04-20 | 天津曙光计算机产业有限公司 | 一种对象存储系统的对象存放策略和访问方法 |
Non-Patent Citations (1)
Title |
---|
姜浩然等.教育资源网格中基于节点负载的副本放置策略.《济南大学学报(自然科学版)》.2011,第25卷(第4期),第377-382页. * |
Also Published As
Publication number | Publication date |
---|---|
CN102984280A (zh) | 2013-03-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102984280B (zh) | 针对社交类云存储网络应用的数据备份系统和方法 | |
CN103150347B (zh) | 基于文件热度的动态副本管理方法 | |
US9317223B2 (en) | Method and apparatus for automated migration of data among storage centers | |
CN106599308B (zh) | 一种分布式元数据管理方法及系统 | |
CN102523279B (zh) | 一种分布式文件系统及其热点文件存取方法 | |
CN103425756B (zh) | 一种hdfs中数据块的副本管理策略 | |
US8495021B2 (en) | Distribution data items within geographically distributed databases | |
CN102708165B (zh) | 分布式文件系统中的文件处理方法及装置 | |
CN106933868B (zh) | 一种调整数据分片分布的方法及数据服务器 | |
CN103366016A (zh) | 基于hdfs的电子文件集中存储及优化方法 | |
US9774676B2 (en) | Storing and moving data in a distributed storage system | |
CN109947668A (zh) | 存储数据的方法和装置 | |
CN106230971B (zh) | 基于cdn的大文件分发方法 | |
Nannai John et al. | A novel dynamic data replication strategy to improve access efficiency of cloud storage | |
CN105407004A (zh) | 基于边缘无线热点进行内容分发的方法及装置 | |
CN103631894A (zh) | 一种基于hdfs的动态副本管理方法 | |
CN110007862A (zh) | 基于网络存储设备的混合云存储系统及其数据处理方法 | |
CN113811928A (zh) | 用于k最近近邻搜索的分布式内存空间数据存储 | |
JP2009122981A (ja) | キャッシュ配置方法 | |
CN108073472A (zh) | 一种基于热度感知的内存纠删码分布方法 | |
CN102609508B (zh) | 一种面向网络存储的文件高速访问方法 | |
CN108833531A (zh) | 一种基于数据中心能耗和网络能耗的数据放置方法 | |
CN101483668A (zh) | 热点数据的网络存储和访问方法、设备及系统 | |
KR101718739B1 (ko) | 이기종 하둡을 위한 동적 데이터 복제 시스템 및 방법 | |
CN109831502A (zh) | 新型网站云虚拟主机架构 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20150520 Termination date: 20171218 |
|
CF01 | Termination of patent right due to non-payment of annual fee |