一种三维立体模型式的云存储多节点数据恢复方法

文档序号:10597221阅读:236来源:国知局
一种三维立体模型式的云存储多节点数据恢复方法
【专利摘要】本发明属于云存储和信息安全领域,主要是一种三维立体模型式的云存储多节点数据恢复方法。本发明包括:云存储系统的文件划分模块在有限域内对原始文件进行线性划分;网络编码策略模块接收由文件划分模块传送来的数据块集;编码块存储模块接收由网络编码策略模块传送过来的编码后的数据块集。当编码后的数据块存储到三维立体模型的相应节点;失效节点修复模块接收到节点检测模块D1发送过来的失效节点信息。本发明不仅能够对云存储系统的单节点失效进行恢复,还能够对多节点失效进行恢复。该方法通过对存储节点进行定期检测,保证系统的可靠性,在检测出失效节点后,通过对失效节点进行恢复,提高系统的完整性和安全性。
【专利说明】
一种三维立体模型式的云存储多节点数据恢复方法
技术领域
[0001] 本发明属于云存储和信息安全领域,主要是一种三维立体模型式的云存储多节点 数据恢复方法。
【背景技术】
[0002] 作为一项新兴研究热点,云存储不仅是一种存储技术或设备,更是一种创新服务 的形式,其具有易扩展、支持PB级以上扩容、按需使用、用户可灵活配置等特性,在提供传统 访问方式之外,还提供了海量数据的管理和对外公共服务的功能。然而,随着云服务的快速 推广,由于非法入侵、人为泄密、管理员权限滥用等原因,云存储系统泄漏用户隐私事件不 断涌现,其安全性问题日益凸显,引起了业界的广泛关注。因此,解决云存储安全性问题变 得刻不容缓。
[0003] 在云存储领域,目前主要有三种安全存放数据的方式,分别是基于复制的、基于纠 删码的和基于网络编码的云存储方案。其中,第一种方案虽然数据存取方便,但通信开销较 大,安全性和可靠性较差;而基于纠删码的云存储方案与基于复制的云存储方案相比,虽然 在安全性和可靠性上有一定程度的提高,但是仍面临着数据修复时高带宽消耗和计算负载 较大等问题。与前两种方案不同,基于网络编码的云存储方案不但具有更好的安全性和可 靠性,而且还具有节约带宽消耗、实现负载均衡、提高网络总体传输速率以及高效原文重构 等特点。
[0004] 文章 "Reducing Repair Traffic for Erasure Coding-Based Storage via Interference Alignment"提出了基于(n,k)的最大距离可分(MDS)码,在存储系统中针对 单个节点失效进行恢复。其中,对于失效的节点,系统需要下载其他有效节点的编码数据进 行解码,根据得到的线性相关数据重新生成一个新的节点,从而恢复出失效的节点,维护同 等水平的数据可用性和完整性。(http : //ieeexplore ? ieee ? org/stamp/stamp ? jsp? arnumber = 5205898) 〇文章 "Explicit Construction of Optimal Exact Regenerating Codes for Distributed Storage" 中提出了Exact-MBR codes方法,该方法能够对于单独 的存储节点失效进行恢复,即失效节点中需要被恢复的块数与其他完整节点中所保留的块 数相同,可以从完整节点中恢复出失效节点的内容,该编码方式可以避免不需要的干扰,减 小修复带宽( http://arxiv.org/abs/0906.4913)。文章 "Exact Regeneration Codes for Distributed Storage Repair Using Interference Alignment"提出了精确的最小存储 再生码(EMSR codes)方法,该方法在存储大小不变的情况下可以使修复带宽减少25% (http : //arxiv ? org/pdf/1001 ? 0107 ? pdf)。文章 "NCCloud: A Network-Coding-Based Storage System in a Cloud-of-Clouds"提出了功能最小存储再生码(FMSR codes)方法, 该方法在以往方法的基础上做了进一步改进,在原文件很大的情况下,可以把修复带宽减 小接近50 % (http : //www ? computer ? org/csdl/trans/tc/2014/01/ttc2014010031-abs.html) ^专利"基于网络编码的分布式数据存储和修复系统及其方法(CN104113562A)" 能够减小数据存储和修复所需的带宽需求,保障系统的负载均衡,并在数据安全性上有一 定的提尚。
[0005] 综上所述,目前的方法,主要致力于减少存储和修复带宽,尽可能地提高存储的安 全性。但是,它们仅仅是在针对单节点失效情况下进行数据恢复,而没有考虑到多节点失效 的情况。
[0006] 本发明是一种三维立体模型式的云存储多节点数据恢复方法,该方法首先对文件 进行划分,然后对划分的数据进行网络编码,来降低存储开销。云存储系统可以对存储节点 进行定期检测,保证系统可靠性。在检测出失效节点后,对失效节点进行恢复,从而提高系 统的完整性和安全性。

【发明内容】

[0007] 本发明的目的在于提供一种三维立体模型式的云存储多节点数据恢复方法。
[0008] 本发明的目的是这样实现的:
[0009] 三维立体模型式的云存储多节点数据恢复方法,包括如下步骤:
[0010] (1)云存储系统的文件划分模块在有限域内对原始文件进行线性划分,划分出n块 大小相同的数据块,且n = 2k,k彡3,由数据块组成一个数据块集M',即M'= {mi',m2', .? ? mn '},数据块集M '传到网络编码策略模块;
[0011] (2)网络编码策略模块接收由文件划分模块传送来的数据块集M',并对M'中每一 块数据块单独进行网络编码,形成编码后的数据块集M,即M= {mi,m2,. . .mn},网络编码策略 模块将编码后的数据块集M传送到编码块存储模块;
[0012] (3)编码块存储模块接收由网络编码策略模块传送过来的编码后的数据块集M,并 把编码后的n块数据块存储到t个原始数据节点上,0〈t〈n,且t = 2q,q多2,其中每个节点都 存储2h个数据块,构成一个基准向量,组成一个包含
个基准向量的基准向量集SV-set,
'由基准向量经过运算得到非基准向量NSVijNSV# a SV'i? 0 SVJ5
且j辛i ;扭为任意加、减运算,满足交换律;a,{]为任意 系数,采用一种三维立体模型式的云存储多节点数据恢复方法的三维立体分布构造方法构 建一个三维立体模型;
[0013] (4)当编码后的数据块存储到三维立体模型的相应节点,包括存储基准向量的基 准节点和存储非基准向量的非基准节点之后,节点检测模块D1定期的检测各个节点上是否 有数据受到破坏,节点是否失效;若没有节点失效,返回一个安全的信号,若有节点失效, 则对失效节点修复模块发送失效节点信息;
[0014] (5)失效节点修复模块接收到节点检测模块D1发送过来的失效节点信息,通过三 维立体模型式的云存储多节点数据恢复方法的三维立体数据恢复方法对失效节点进行修 复;失效节点恢复后,进入到步骤(6);
[0015] (6)当节点恢复部分把失效的节点恢复后,节点检测模块D2针对恢复的内容进行 检测,判断恢复数据是否正确,若正确,则结束该时段内的运作;若不正确,则提出警告,重 新修复。
[0016] 所述步骤(3)还包括:
[0017] (3.1)选定立体的任意一个面为基准面面1,从n块编码后的数据块中任选n/2块数 据块存储到基准面1的s个基准节点上,其中:
,每个基准节点以向量的形式存储2h块数据 块,即 2>-i = s*2h,h为根据n的大小而设定的任意自然数;
[0018] (3.2)以基准面面1为起点,以顺时针方向定义立体的其余面为辅助面面2、基准面 面3和辅助面面4,上侧面为辅助面面5,下侧面为辅助面面6;
[0019] (3.3)将除了存储到基准面面1上剩余的n/2块编码后的数据块以相同的形式存储 到另一个基准面面3上;
[0020] (3.4)从基准面面1的2k<块数据块中随机选取Ti = 2k<块数据块,剩余T2 = 2k<块数 据块,从基准面面3的21-1块数据块中随机选取T 3 = 2k_2块数据块,剩余T4 = 2k_2块数据块;把 TjPT3组成21-1块数据块,存放到辅助面面2上;TjPT 4组成21-1块数据块,存放到辅助面面4 上;T^T3组成2 15-1块数据块,存放到辅助面面5上;T^T4组成的215-1块数据块,存放到辅助 面面6上。
[0021] 所述步骤(5)还包括:
[0022] (5.1)设三维立体模型每个面上分别存有p个节点,其中 ,则三维立体 模型一共含有6p个节点,其中每个面都包含s个基准节点和p-s个非基准节点,其中
p-s=C^.2,即三维立体模型包含6s个基准节点和6*(p-s)个非基准节点;
[0023] (5.2)当节点检测模块D1检测到三维立体模型中某一面的一个节点失效时,通过 共同面上的其他节点进行恢复;当某个面的第i个基准节点失效时,由其余P-1个节点上的 数据进行线性组合运算,恢复出失效数据;
[0024]当节点检测模块D1检测到三维立体模型中某一面上的失效节点多于一个时,由三 维立体分布构造方法得知该三维立体模型共有6个面,其中有两个基准面分别为面1和面 3,四个辅助面分别为面2,面4,面5和面6;得出辅助面面2和辅助面面4包含基准面面1中的 数据块h,辅助面面5和辅助面面6包含基准面面1中的数据块T 2,辅助面面2和辅助面面5包 含基准面面3中的数据块T3,辅助面面4和面辅助面6包含基准面面3中的数据块T 4;通过其他 面中与失效节点相关的节点上数据的线性组合运算,恢复出失效节点中的数据;当三维立 体模型上基准节点失效个数为x = 6s时,该方法失去恢复意义;当三维立体模型上基准节点 失效个数为x = 6s-l,且非基准节点没有失效时,基准节点的数据都被恢复出来;当三维立 体模型上基准节点失效个数为x〈6s-l,且与失效的基准节点相关的非基准节点没有失效 时,基准节点的数据都被恢复出来。
[0025]本发明的有益效果在于:
[0026]本发明提出了一种三维立体模型式的云存储多节点数据恢复方法,该方法不仅能 够对云存储系统的单节点失效进行恢复,还能够对多节点失效进行恢复。该方法通过对存 储节点进行定期检测,保证系统的可靠性,在检测出失效节点后,通过对失效节点进行恢 复,提高系统的完整性和安全性。
【附图说明】
[0027]图1 一种三维立体模型式的云存储多节点数据恢复方法的原理图;
[0028]图2-种三维立体模型式的云存储多节点数据恢复方法的三维立体模型面1上的 具体节点修复示例图;
[0029]图3-种三维立体模型式的云存储多节点数据恢复方法的流程图。
【具体实施方式】
[0030] 下面结合附图对本发明做进一步描述。
[0031] 本发明是针对云存储提出的一种三维立体模型式的云存储多节点数据恢复方法, 旨在解决现有方法中只能对单节点失效进行恢复的不足,并采用网络编码的方式实现负载 均衡,提高云存储系统中数据的安全性。
[0032]本发明所述的一种三维立体模型式的云存储多节点数据恢复方法包括以下几个 组成模块:
[0033] (1)文件划分模块:云存储系统利用文件划分模块对原始文件在有限域内进行划 分,以保证比单纯复制方案有更低的冗余性。
[0034] (2)网络编码策略模块:云存储系统利用编码策略模块把文件划分模块划分出来 的数据块进行网络编码,以保证存储文件的可靠性和安全性。
[0035] (3)编码块存储模块:云存储系统利用编码块存储模块把编码后的数据存储到相 应的节点上,使这些节点具有关联性。
[0036] (4)节点检测模块:该模块分为两个功能模块,分别是节点检测模块D1和节点检测 模块D2。节点检测模块D1的功能是在编码后的数据存储到相应节点上之后,系统会定期检 测节点上的数据,从而保证数据的完整性和安全性;节点检测模块D2的功能是当有节点失 效时,可以检测修复后的节点数据是否与原始数据保持一致,从而保证数据的一致性。 [0037] (5)失效节点修复模块:当系统中有节点失效时,要保证数据文件的完整性,云存 储系统会利用失效节点修复模块对失效的节点进行恢复。
[0038]本发明提出的一种三维立体模型式的云存储多节点数据恢复方法,其主要思想是 构建一个三维立体模型,该立体模型的每一个面上都分布着包含数据块的节点,并且每个 节点上的数据都可以由三维立体模型上的一个面或多个面上的数据进行恢复,进而提高数 据的可靠性和恢复的正确性。
[0039]上述一种三维立体模型式的云存储多节点数据恢复方法,包括以下具体步骤:
[0040] (1)首先,云存储系统的文件划分模块在有限域内对原始文件进行线性划分,划分 出n(n是自然数)块大小相同的数据块,且n = 2k(k多3),由这些数据块组成一个数据块集 M',即M' = {nu',m2',. ? .mn'}。之后,数据块集M'被传到网络编码策略模块。
[0041] (2)网络编码策略模块接收由文件划分模块传送来的数据块集M',并对M'中每一 块数据块单独进行网络编码(例如Exact-MBR Codes方法等),形成编码后的数据块集M,BPM ={nu,m2,. . .mn}。此后,网络编码策略模块将编码后的数据块集M传送到编码块存储模块。 [0042] (3)编码块存储模块接收由网络编码策略模块传送过来的编码后的数据块集M,并把 编码后的11±夬数据块存储到t(0〈t〈n,且t = 2q,q>2)个原始数据节点上,其中每个节点都存储2h (其中h为根据n的大小而设定的任意自然数)个数据块,它们构成一个基准向量,由此可组成一 个包含
?个基准向量的基准向量集SV-set,设# -= …'°由基准向量经过 运算得到非基准向量NSVwNSVfa SU
-,且j辛i; ?为任意加、减运算,满足交换律;a,P为任意系数)。采用一种三维立体模型式的云存储多 节点数据恢复方法的三维立体分布构造方法构建一个三维立体模型。
[0043] (4)当编码后的数据块存储到三维立体模型的相应节点(包括基准节点(存储基准 向量)和非基准节点(存储非基准向量))上之后,节点检测模块D1会定期的检测各个节点上 是否有数据受到破坏,节点是否失效。若没有节点失效,会返回一个安全的信号,若有节点 失效,则对失效节点修复模块发送失效节点信息。
[0044] (5)失效节点修复模块接收到节点检测模块D1发送过来的失效节点信息,通过一 种三维立体模型式的云存储多节点数据恢复方法的三维立体数据恢复方法对失效节点进 行修复。失效节点恢复后,进入到步骤(6)。
[0045] (6)当节点恢复部分把失效的节点恢复后,节点检测模块D2会针对恢复的内容进 行检测,判断恢复数据是否正确,若正确,则结束该时段内的运作;若不正确,则提出警告, 重新修复。
[0046]其中上述步骤(3)中的一种三维立体模型式的云存储多节点数据恢复方法的三维 立体分布构造方法,具体还包括:
[0047] 1)选定立体的任意一个面为基准面面1,从n块编码后的数据块中任选n/2块数据 块存储到基准面1的s(其中
)个基准节点上,每个基准节点以向量的形式存储2h(h为根 据n的大小而设定的任意自然数)块数据块,即
[0048] 2)以基准面面1为起点,以顺时针方向定义立体的其余面为辅助面面2、基准面面3 和辅助面面4,上侧面为辅助面面5,下侧面为辅助面面6;
[0049] 3)将除了存储到基准面面1上剩余的n/2块编码后的数据块以相同的形式存储到 另一个基准面面3上;
[0050] 4)从基准面面1的2k<块数据块中随机选取Ti = 2k<块数据块,剩余T2 = 2k<块数据 块,从基准面面3的21-1块数据块中随机选取T 3 = 2k_2块数据块,剩余T4 = 2k_2块数据块。把h 和T3组成21-1块数据块,存放到辅助面面2上。T^T4组成2 1-1块数据块,存放到辅助面面4上。 T2和T3组成21-1块数据块,存放到辅助面面5上。T#PT 4组成的21-1块数据块,存放到辅助面面 6上。
[0051]其中上述步骤(5)中的一种三维立体式的云存储多节点数据恢复方法的三维立体 数据恢复方法,具体还包括:
[0052] 1)设三维立体模型每个面上分别存有p(其中
|个节点,则三维立体模 型一共含有6p个节点,其中每个面都包含s (其4
)个基准节点和p-s(其中p-s= )个 非基准节点,即三维立体模型包含6s(即3t)个基准节点和6*(p_s)个非基准节点。
[0053] 2)当节点检测模块D1检测到三维立体模型中某一面的一个节点失效时,可以通过 共同面上的其他节点进行恢复。当某个面的第i个基准节点失效时,可由其余P-1个节点上 的数据进行线性组合运算,恢复出失效数据,非基准节点失效不影响整个数据的完整性和 安全性。
[0054] 3)当节点检测模块D1检测到三维立体模型中某一面上的失效节点多于一个时,由 三维立体分布构造方法得知该三维立体模型共有6个面,其中有两个基准面分别为面1和 面3,四个辅助面分别为面2,面4,面5和面6。进一步还可以得出辅助面面2和辅助面面4包含 基准面面1中的数据块h,辅助面面5和辅助面面6包含基准面面1中的数据块T 2,辅助面面2 和辅助面面5包含基准面面3中的数据块T3,辅助面面4和面辅助面6包含基准面面3中的数 据块T 4。由此可知三维立体模型辅助面上节点的数据与基准面上节点的数据具有相关性, 所以通过其他面中与失效节点相关的节点上数据的线性组合运算,可恢复出失效节点中的 数据。当三维立体模型上基准节点失效个数为x(其中x = 6s)时,该方法失去恢复意义;当三 维立体模型上基准节点失效个数为x(其中x = 6s-l),且非基准节点没有失效时,基准节点 的数据都可被恢复出来;当三维立体模型上基准节点失效个数为x(其中x〈6s-l),且与失效 的基准节点相关的非基准节点没有失效时,基准节点的数据都可被恢复出来。
[0055] 图1展示了文件是如何在云存储系统中进行处理的。首先被存储到云存储系统中 的文件要经过文件划分模块,将文件划分成n块大小相同的数据块,之后由网络编码策略模 块进行编码处理,编码后的数据块会被分配到相应的存储节点进行存储,同时,系统的节点 检测模块D1会定期的检测这些节点是否受到破坏,当检测到节点i失效后,系统的节点检测 模块D1会通知系统的失效节点修复模块通过三维立体数据恢复方法对失效节点进行恢复, 同时,节点检测模块D2会检测修复后的数据是否与修复前的数据保持一致,以保证数据的 完整性。
[0056]图3展示了本发明中具体的三维立体模型节点修复示意图。假设云存储系统的文 件划分模块将原始文件分为了 16(n=16)块数据块,即M'= {nu',m2',. . .,m16'},编码后的 数据块集为M={mi,m2,. . .,mi6},选择每4(2h = 4,即选择h = 2)块存储在一个节点上,贝lj生成 4个原始数据节点,即t = 4,具体节点分布为Nodel :A= {mi,m2,m3,m4},Node2:B = {m5,m6,m7, ms},Node3:C= {m9,mi〇,mii,mi2},Node4:D= {mi3,mi4,mi5,mi6}。组成的三维立体模型一共有 18个节点,每个面上有3个节点,其中2个基准节点和1个非基准节点,即p = 3,s = 2。任选三 维立体模型的一个面为基准面面1,该面上的三个节点向量分布如下:
[0057] Nodell:Al = {mi,m2,m3,1114}
[0058] Nodel2 :B1 = {ms,m6,m7,m8}
[0059] Node 13:C1={ a Al? 0 tBl},其中为系数。
[0060] 其中?为任意加、减运算符号,满足交换律。
[0061] 以基准面面1为起点,以顺时针方向定义立体的其余面为辅助面面2、基准面面3和 辅助面面4,上侧面为辅助面面5,下侧面为辅助面面6。
[0062]基准面面3的节点向量分布如下:
[0063] Node31 :A3= {mg,mio,mn,11112}
[0064] Node32:B3= {mi3,mi4,mi5,mi6}
[0065] Node33:〇={a2A3? 02B3},其中a2,&为系数。
[0066] 其中?为任意加、减运算符号,满足交换律。
[0067]辅助面面2的节点向量分布如下:
[0068] Node21: A2= {mi,m2,m3,1114}
[0069] Node22:B2= {mg,mio,mn,11112}
[0070] Node23:C2二{ a 3A2? 0 3B2:},其中a3,fc为系数。
[0071] 其中?为任意加、减运算符号,满足交换律。
[0072]辅助面面4的节点向量分布如下:
[0073] Node41: A4= {mi,m2,m3,1114}
[0074] Node42:B4= {mi3,mi4,mi5,mi6}
[0075] Node43:C4={a 4A4十 P4B4},其中a4,04为系数。
[0076] 其中?为任意加、减运算符号,满足交换律。
[0077]辅助面面5的节点向量分布如下:
[0078] Node51 :A5= {m5,m6,m7,m8}
[0079] Node52:B5= {mg,mio,mn,11112}
[0080] Node53:C5={a SA5 十 g5B5},其中a5,05为系数。
[0081] 其中?为任意加、减运算符号,满足交换律。
[0082]辅助面面6的节点向量分布如下:
[0083] Node61 :A6= {m5,m6,m7,m8}
[0084] Node62:B6= {mi3,mi4,mi5,mi6}
[0085] Node63: C6={ a SA6HB:6},其中a6,06为系数。
[0086] 其中?为任意加、减运算符号,满足交换律。
[0087] 1)当某一个面中的某一个节点失效时,可以由同一面的其他节点上的数据向量共 同完成修复内容。假设基准面面1上的Nodell失效,节点上失效的内容可由Nodel2和Nodel3 进行加减运算得出;若失效节点是非基准节点Nodel3,则不影响文件的完整性。
[0088] 2)当某一面中有多个节点失效时,由三维立体分布构造方法可知三维立体模型各 个面具有相关性,从而失效的多个节点可以由其他面的节点进行恢复。假设面1上的Nodell 和Nodel 2的数据都被破坏,Node 11的数据由面2和面4上的节点向量进行加减运算来恢复, Nodel2的数据由面5和面6上的节点向量进行加减运算来恢复。
[0089] 图3展示了本发明的主要流程。首先,云存储系统将存储文件划分成大小相同的n 块(n为自然数,且n = 2k,k多3)数据块,形成数据块集M'。第二步是把M'中每一块数据块单 独进行网络编码,形成编码后的数据块集M。第三步是将n块编码后的数据块分别存储到相 应的存储节点(包括基准节点和非基准节点)上,并采用三维立体分布构造法构建一个三维 立体模型。第四步是节点检测模块D1,该部分会定期检测节点中的数据是否完整,节点是否 失效,如果没有检测到失效节点,则结束此时段内的检测,如果检测到失效节点,就会进入 下一步节点修复模块。在节点修复模块,系统通过三维立体数据恢复方法对失效节点进行 修复,之后,节点检测模块D2会对恢复后的节点数据进行检测,判断其恢复的数据是否是正 确的,如果恢复正确,则结束该时段内的运作,否则,进行重新修复。
[0090] 本发明的有益效果体现在:
[0091] (1)本发明提出了一种三维立体模型式的云存储多节点数据恢复方法,该方法不 仅能够对云存储系统的单节点失效进行恢复,还能够对多节点失效进行恢复。
[0092] (2)该方法通过对存储节点进行定期检测,保证系统的可靠性,在检测出失效节点
【主权项】
1. 一种三维立体模型式的云存储多节点数据恢复方法,其特征在于,包括如下步骤: (1) 云存储系统的文件划分模块在有限域内对原始文件进行线性划分,划分出η块大小 相同的数据块,且n = 2k,k彡3,由数据块组成一个数据块集Μ',即M' = {nu',m2',· ..mn'},数 据块集Μ'传到网络编码策略模块; (2) 网络编码策略模块接收由文件划分模块传送来的数据块集Μ',并对Μ'中每一块数 据块单独进行网络编码,形成编码后的数据块集M,即M={nu,m 2,. . .mn},网络编码策略模块 将编码后的数据块集Μ传送到编码块存储模块; (3) 编码块存储模块接收由网络编码策略模块传送过来的编码后的数据块集Μ,并把编 码后的η块数据块存储到t个原始数据节点上,0〈t〈n,且t = 2q,q多2,其中每个节点都存储2h 个数据块,构成一个基准向量,组成一个包含#个基准向量的基准向量集SV-set, SK-w = ii_ '由基准向量经过运算得到非基准向量NSVi」,NSVi」=aSVi θ β fl f\ SVj,i=l,2,: · .,,#; >1,2, ...,y,且j乒1,为任意加、减运算,满足交换律;α,β为 任意系数,采用一种三维立体模型式的云存储多节点数据恢复方法的三维立体分布构造方 法构建一个三维立体模型; (4) 当编码后的数据块存储到三维立体模型的相应节点,包括存储基准向量的基准节 点和存储非基准向量的非基准节点之后,节点检测模块D1定期的检测各个节点上是否有数 据受到破坏,节点是否失效;若没有节点失效,返回一个安全的信号,若有节点失效,则对失 效节点修复模块发送失效节点信息; (5) 失效节点修复模块接收到节点检测模块D1发送过来的失效节点信息,通过三维立 体模型式的云存储多节点数据恢复方法的三维立体数据恢复方法对失效节点进行修复;失 效节点恢复后,进入到步骤(6); (6) 当节点恢复部分把失效的节点恢复后,节点检测模块D2针对恢复的内容进行检测, 判断恢复数据是否正确,若正确,则结束该时段内的运作;若不正确,则提出警告,重新修 复。2. -种三维立体模型式的云存储多节点数据恢复方法,其特征在于:所述步骤(3)还包 括: (3.1) 选定立体的任意一个面为基准面面1,从η块编码后的数据块中任选η/2块数据块 存储到基准面1的s个基准节点上,其中η |,每个基准节点以向量的形式存储2h块数据块, 即2k_i = s*2h,h为根据n的大小而设定的任意自然数; (3.2) 以基准面面1为起点,以顺时针方向定义立体的其余面为辅助面面2、基准面面3 和辅助面面4,上侧面为辅助面面5,下侧面为辅助面面6; (3.3) 将除了存储到基准面面1上剩余的η/2块编码后的数据块以相同的形式存储到另 一个基准面面3上; (3.4) 从基准面面1的21-1块数据块中随机选取h = 2k_2块数据块,剩余T2 = 2k_2块数据 块,从基准面面3的21-1块数据块中随机选取T 3 = 2k_2块数据块,剩余T4 = 2k_2块数据块;把!^ 和T3组成21- 1块数据块,存放到辅助面面2上;T^T4组成21-1块数据块,存放到辅助面面4上; T2和T3组成21-1块数据块,存放到辅助面面5上;T#PT 4组成的21-1块数据块,存放到辅助面面 6上。3. -种三维立体模型式的云存储多节点数据恢复方法,其特征在于:所述步骤(5)还包 括: (5.1) 设三维立体模型每个面上分别存有ρ个节点,其中,则三维立体模型一 共含有6ρ个节点,其中每个面都包含S个基准节点和P-S个非基准节点,其中 λ ρ-3=.<^.2:.,即三维立体模型包含6s个基准节点和6*(p-s)个非基准节点; (5.2) 当节点检测模块D1检测到三维立体模型中某一面的一个节点失效时,通过共同 面上的其他节点进行恢复;当某个面的第i个基准节点失效时,由其余P-1个节点上的数据 进行线性组合运算,恢复出失效数据; 当节点检测模块D1检测到三维立体模型中某一面上的失效节点多于一个时,由三维立 体分布构造方法得知该三维立体模型共有6个面,其中有两个基准面分别为面1和面3,四个 辅助面分别为面2,面4,面5和面6;得出辅助面面2和辅助面面4包含基准面面1中的数据块 Ti,辅助面面5和辅助面面6包含基准面面1中的数据块T2,辅助面面2和辅助面面5包含基准 面面3中的数据块Τ 3,辅助面面4和面辅助面6包含基准面面3中的数据块Τ4;通过其他面中与 失效节点相关的节点上数据的线性组合运算,恢复出失效节点中的数据;当三维立体模型 上基准节点失效个数为x = 6s时,该方法失去恢复意义;当三维立体模型上基准节点失效个 数为x = 6s-l,且非基准节点没有失效时,基准节点的数据都被恢复出来;当三维立体模型 上基准节点失效个数为x〈6s-l,且与失效的基准节点相关的非基准节点没有失效时,基准 节点的数据都被恢复出来。
【文档编号】H04L29/08GK105959338SQ201610168643
【公开日】2016年9月21日
【申请日】2016年3月23日
【发明人】吕宏武, 蔡瑶琦, 郭方方, 王慧强, 朱金美, 冯光升
【申请人】哈尔滨工程大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1