当前位置: 首页 > 专利查询>长安大学专利>正文

一种基于shadow的部分重复码构造方法技术

技术编号:31017869 阅读:20 留言:0更新日期:2021-11-30 03:01
本发明专利技术公开了一种基于shadow的部分重复码构造方法,包括以下步骤:步骤1:将原始文件M分成k个原始数据块,对k个原始数据块进行(n,k)MDS编码得到n个编码数据块;步骤2:根据编码数据块的个数n构建集合X和集合ψ,其中,集合X包括n个不同元素,集合ψ包括t个子集φ,所述子集φ为集合X的(d+1)元子集,子集φ包含(d+1)个元素且每个子集φ内没有相同的元素;步骤3:获得集合ψ的影子集合其中,影子集合包括t组子影子集合,每组子影子集合包含(d+1)个集合φ',集合φ'包含d个元素,集合φ'由删除子集φ中任一个元素后其余元素组成;步骤4:根据影子集合构造FR码。本发明专利技术构造出的FR码修复局部性较低且不会随着系统参数增加而增加,同时,可以根据系统需要选择合适的节点存储容量以及数据重复度。节点存储容量以及数据重复度。节点存储容量以及数据重复度。

【技术实现步骤摘要】
一种基于shadow的部分重复码构造方法


[0001]本专利技术属于计算机领域,具体涉及一种基于shadow的部分重复码构造方法。

技术介绍

[0002]随着技术的进步,越来越多数据需要存储,但是传统的存储系统已无法满足海量的数据存储,可以大量存储数据的分布式存储系统应运而生。在分布式存储系统中,经常存在数据的丢失,所以需要一些方法来保证数据的可靠性,一般会采用“复制”和“纠删码”技术。但是复制策略所占据的存储开销较大,纠删码修复较为复杂,在修复过程中需要下载整个文件进行修复,所需较大的修复带宽开销。于是Rouayheb和Ramchandran于2010年提出一种精确修复的部分重复(Fractional Repetition,FR)码。FR码能容忍多故障节点的精确无编码修复,其修复带宽开销和计算复杂度较小,故障节点修复性能大大提升。FR码的构造方法现有许多,如利用Steiner系、成对平衡设计等方法构造FR码。
[0003]现有FR码构造中大都无法调整系统参数,如运用正则图构造部分重复码,其重复度不可改变且只能修复单节点故障。Prajapati提出一种具有环形结构的部分重复码,无法根据系统需求及时地调整参数。基于可分组设计的FR码,可以根据系统需要选择合适的存储容量或重复度,但是其修复局部性会随着参数增大而增大。

技术实现思路

[0004]本专利技术的目的在于提供一种基于shadow的部分重复码构造方法,用以解决现有技术中的无法根据系统需求改变存储容量、重复度以及修复局部性较大的问题。
>[0005]为了实现上述任务,本专利技术采用以下技术方案:
[0006]一种基于shadow的部分重复码构造方法,包括以下步骤:
[0007]步骤1:将原始文件M分成k个原始数据块,对k个原始数据块进行(n,k)MDS编码得到n个编码数据块,其中,k≥2且n≥k;
[0008]步骤2:根据编码数据块的个数n构建集合X和集合ψ,其中,集合X包括n个不同元素,集合ψ包括t个子集φ,所述子集φ为集合X的(d+1)元子集,子集φ包含(d+1)个元素且每个子集φ内没有相同的元素,其中,d为正整数且(d+1)<n;
[0009]步骤3:获得集合ψ的影子集合其中,影子集合包括t组子影子集合,每组子影子集合包含(d+1)个集合φ',集合φ'包含d个元素,集合φ'由删除子集φ中任一个元素后其余元素组成;
[0010]步骤4:根据影子集合构造FR码,包括三种情况:
[0011]情况一:若构造同构FR码,则所述同构FR码的每个节点对应影子集合的每个集合φ',所述同构FR码的节点个数为t
×
(d+1),所述同构FR码的节点存储容量为d,所述同构FR码的重复度为d,所述同构FR码的每个节点存储的数据块为对应集合包含的元素;
[0012]情况二:若构造重复度异构FR码,则删除中每组子影子集合中的任一个集合
φ',得到删减后的影子集合删减后的影子集合包括t组子影子集合,每组子影子集合包含d个集合φ';
[0013]所述的重复度异构FR码的每个节点对应删减后的影子集合的每个集合φ',所述重复度异构FR码的节点个数为t
×
d,所述重复度异构FR码的节点存储容量为d,所述重复度异构FR码的重复度为d或(d

1),所述重复度异构FR码的每个节点存储的数据块为对应集合φ'包含的元素;
[0014]情况三:若构造存储容量异构FR码,则在情况二的基础上构建删减后的影子集合的shadow子关联矩阵A,对A进行行列互换得到矩阵A';
[0015]所述的存储容量异构FR码的每个节点对应矩阵A'中每一行,所述存储容量异构FR码的节点个数为矩阵A'行数,所述存储容量异构FR码的节点存储容量为d或d

1,所述存储容量异构FR码的重复度为d,所述存储容量异构FR码的每个节点存储的数据块为对应行中元素为1的列数。
[0016]本专利技术与现有技术相比具有以下技术特点:
[0017]1、基于shadow构造的部分重复码是一种新的算法,利用该算法来构造FR码更加简单直观和高效,构造出的FR码修复局部性较低不会随着系统参数增加而增加。
[0018]2、基于shadow构造的部分重复码,可以根据系统需要选择合适的节点存储容量以及数据重复度。
附图说明
[0019]图1是基于shadow构造的同构FR码结构;
[0020]图2是基于shadow构造的重复度异构FR码;
[0021]图3是基于shadow构造的存储容量异构FR码。
具体实施方式
[0022]以下结合附图及实施例,对本专利技术进行进一步详细说明。需要说明的是,在以下的实施例中,仅仅是使本领域技术人员对本专利技术的目的、技术方案及优点更加清楚明白,本专利技术不限于这些实施例。
[0023]shadow影子结构:设X是n个元素组成的集合,让表示全部X中k个元素组成的集合,存在集合其中0≤k≤n。集合
[0024][0025]称集合为δ的影子(shadow),其中表示X中所有k

1个元素组成的集合。E
表示集合中的一个子集,F表示集合δ中的一个子集,shadow集合是通过删除集合δ中的一个元素构成的集合。
[0026]在本实施例中公开了一种基于shadow构造的部分重复码的构造方法,具体包括以下步骤:
[0027]步骤1:将原始文件M分成k个原始数据块,对k个原始数据块进行(n,k)MDS编码得到n个编码数据块c1,

,c
k
‑1,c
k
,c
k+1
,

c
n
,n个编码数据块包括k个原始数据块和n

k个校验数据块,其中,k≥2且n≥k;
[0028]步骤2:根据编码数据块的个数n构建集合X和集合ψ,其中,集合X包括n个不同元素,集合ψ包括t个子集φ,所述子集φ为集合X的(d+1)元子集,子集φ包含(d+1)个元素且每个子集φ内没有相同的元素,其中,d为正整数且(d+1)<n;
[0029]步骤3:对子集φ中的每个元素均删除一次,获得集合ψ的影子集合其中,影子集合包括t组子影子集合,每组子影子集合包含(d+1)个集合φ',每个集合φ'包含d个元素;
[0030]步骤4:根据影子集合构造FR码,包括三种情况:
[0031]情况一:若构造同构FR码,则所述同构FR码的每个节点对应影子集合的每个集合φ',所述同构FR码的节点个数为t
×
(d+1),所述同构FR码的节点存储容量为d,所述同构FR码的重复度为d,所述同构FR码的每个节点存储的数据块为对应集合φ'包含的元素;
[0032]情况二:若构造重复度异构FR码,则删除中每组子影子集合中的任一个集合φ',得到删减后的影子集合删本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种基于shadow的部分重复码构造方法,其特征在于,包括以下步骤:步骤1:将原始文件M分成k个原始数据块,对k个原始数据块进行(n,k)MDS编码得到n个编码数据块,其中,k≥2且n≥k;步骤2:根据编码数据块的个数n构建集合X和集合ψ,其中,集合X包括n个不同元素,集合ψ包括t个子集φ,所述子集φ为集合X的(d+1)元子集,子集φ包含(d+1)个元素且每个子集φ内没有相同的元素,其中,d为正整数且(d+1)<n;步骤3:获得集合ψ的影子集合其中,影子集合包括t组子影子集合,每组子影子集合包含(d+1)个集合φ',集合φ'包含d个元素,集合φ'由删除子集φ中任一个元素后其余元素组成;步骤4:根据影子集合构造FR码,包括三种情况:情况一:若构造同构FR码,则所述同构FR码的每个节点对应影子集合的每个集合φ',所述同构FR码的节点个数为t
×
(d+1),所述同构FR码的节点存储容量为d,所述同构FR码的重复度为d,所述同构FR码的每个节点存储的数据块为对应集合包含...

【专利技术属性】
技术研发人员:王静孙伟何亚锦沈克勤张鑫楠
申请(专利权)人:长安大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1
相关领域技术
  • 暂无相关专利