1.基于超图的自适应可分解部分重复码构造方法,其特征在于,包括以下步骤:步骤1:通过超图染色的方法构造出染色的线性(d,ρ)-超图,所述的染色的线性(d,ρ)-超图包含顶点和染色链路;
步骤2:确定步骤1得到的染色的线性(d,ρ)-超图中顶点和染色链路与自适应可分解部分重复码中节点和数据块之间的对应关系,即超图中顶点对应于自适应可分解部分重复码中数据块,超图中染色链路对应于自适应可分解部分重复码中节点,超图中染色链路所包含的顶点对应于自适应可分解部分重复码中节点所存储的数据块,得到自适应可分解部分重复码的编码结构。
2.如权利要求1所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤1包括如下子步骤:步骤1.1:构造线性(d,ρ)-超图G=(V,E)的模型,包括顶点集V={v1,v2,…,vθ}和链路集E={e1,e2,…,en};
步骤1.2:将步骤1.1的顶点集和链路集分为多个顶点子集和多个链路子集;
步骤1.3:对步骤1.2中得到的每个链路子集中的链路分配顶点;
步骤1.4:对步骤1.3得到的每个链路子集分配颜色,得到染色链路;
步骤1.5:通过步骤1.4得到的分配过顶点且分配过颜色的染色链路即为染色的线性(d,ρ)-超图。
3.如权利要求2所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤1.1包括如下子步骤:线性(d,ρ)-超图G=(V,E)由顶点集V={v1,v2,…,vθ}和链路集E={e1,e2,…,en}组成,每条链路均包含d个顶点,每个顶点均存在于ρ个链路中,任意两条链路最多包含超图中的同一顶点,其中n≡0modρ,θ≡0modd,n/ρ=θ/d,d2≤θ,且n、ρ、θ、d均为正整数。
4.如权利要求2所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤1.2包括如下子步骤:将顶点集V={v1,v2,…,vθ}按序列分为d个顶点子集,分别为V1={v1,…vθ/d},…,Vd={v(θ-θ/(d+1)),…vθ},每个顶点子集包含θ/d个顶点;将链路集E={e1,e2,…,en}按序列分为ρ个链路子集,每个链路子集包含n/ρ个链路,分别为E1={e1,1,…,e1,k,…e1,n/ρ},…,Em={e1,1,…,em,j,…e1,n/ρ},…,Eρ={eρ,1,…,eρ,j,…eρ,n/ρ},其中1≤m≤ρ、1≤j≤n/ρ,m、j均为正整数,em,j表示第m个链路子集Em中的第j个链路。
5.如权利要求2所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤1.3包括如下子步骤:步骤1.3.1:对第一个链路子集E1={e1,1,…,e1,n/ρ}中的链路e1,1,…,e1,θ/d分配顶点,取链路序号1≤j≤n/ρ,取顶点序号1≤i≤θ,当i=jmod(n/ρ)时,将顶点{vi|i=jmod(n/ρ),1≤i≤θ}分配到链路e1,j中;
步骤1.3.2:对第t(2≤t≤ρ)个链路子集中的链路分配顶点,取链路序号1≤j≤n/ρ,需要根据链路e1,1,…,e1,n/ρ,…,et-1,1,…,et-1,n/ρ中分配的顶点,为当前链路子集中的链路et,1,…,et,θ/d分配顶点,且分配原则同时满足条件(1)、(2)和(3):条件(1):链路et,1,…,et,θ/d中包含所有顶点且任意两条链路不相邻且局部不相关;
条件(2):当前链路中的任一条链路et,j中有且仅有每个顶点子集V1,…,Vd中的一个顶点;
条件(3):顶点集V中任意两个顶点最多存在于链路e1,1,…,e1,n/ρ,…,et,1,…,et,n/ρ中的一个链路中。
6.如权利要求3所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤1.4包括如下子步骤:对步骤1.3得到的ρ个链路子集中的每个链路子集分配一种颜色,则超图中共有ρ种不同颜色的链路,即染色链路,顶点集V={v1,v2,…,vθ}中每个顶点存在于ρ条不同颜色的链路中。
7.如权利要求1所述的基于超图的自适应可分解部分重复码构造方法,其特征在于,步骤2包括如下子步骤:所述的染色链路中,每种颜色的染色链路组对应一个自适应可分解部分重复码的平行类,每个平行类由一组节点组成,每个平行类中的节点存储所有数据块,且每个平行类内任意两个节点不存储重复的数据块。
8.一种基于超图的自适应可分解部分重复码故障修复方法,包括以下步骤:
步骤1:按照权利要求1-7中任一项所述的基于超图的自适应可分解部分重复码构造方法,将原文件按照自适应可分解部分重复码的编码结构存储到节点中;
步骤2:判断发生故障的节点数目,若单个节点发生故障,则执行步骤3,若多个节点发生故障,则执行步骤4;
步骤3:找到该故障节点对应的线性(d,ρ)-超图染色链路,根据超图中链路染色情况,替换节点连接任意一个完整链路集对应的存活节点,完成故障节点的修复;
步骤4:找到故障节点对应的超图中染色链路,当多故障节点对应的超图中染色链路最多存在ρ-1种颜色时,且超图中至少存在一个完整链路集,替换节点连接任意一个完整链路集对应的存活节点,完成故障节点的修复;当多故障节点对应的超图中染色链路存在ρ种颜色,且故障节点数不超过n-k时,替换节点连接任意k个存活节点重构原始文件,完成故障节点的修复。