【技术实现步骤摘要】
一种计算和缓存友好的高效里德
‑
所罗门码编码方法
[0001]本专利技术涉及计算机分布式存储系统中的纠删码
,具体涉及一种计算和缓存友好的高效里德所罗门码编码方法。
技术介绍
[0002]纠删码与多副本是存储系统中数据容错的两种最常见冗余技术。副本技术将同一份数据的多个副本存储在不同的节点上。副本技术易于实现,且能为前端用户提供并发访问,但是它的额外存储开销高。与副本技术相比,纠删码可以提供相同的可靠性,但额外存储开销可以降低一个数量级,广泛应用在大规模存储系统,以节省存储成本。但是,基于纠删码的容错技术在写数据的时候需要对数据块进行编码计算,得到校验块,在故障修复时需要利用幸存块进行解码计算,得到故障块。编解码计算不仅会降低写数据和修复的速度,还会占用CPU和内存资源。即使是当前最先进的纠删码库ISA
‑
L的编码速度仍低于内存I/O和远程直接内存访问(RDMA)的速度。因此,提高纠删码的编解码速度具有重大意义。
[0003]里德所罗门码是一种常用纠删码,其编码过程需要进行乘 ...
【技术保护点】
【技术特征摘要】
1.一种计算和缓存友好的高效里德
‑
所罗门码编码方法,采用(k,m)柯西里德
‑
所罗门码对k个数据块D0,D1,...,D
k
‑1进行编码,得到m个校验块P0,P1,...,P
m
‑1,编码在有限域GF(2
w
)中进行,将乘法运算转换成异或运算,其中m
×
k的编码矩阵被转换为mw
×
kw的位矩阵,其特征在于,包括以下步骤:步骤一、拆分数据块和校验块:将数据块D
i
,0≤i≤k
‑
1拆分为rw个数据包,r∈N
+
,校验块P
i
,0≤i≤m
‑
1拆分为rw个校验包,编码分成r轮进行,每一轮从数据块D
i
中取出w个数据包D
i0
,D
i1
,
…
,D
i(w
‑
1)
,计算校验块P
i
的w个校验包P
i0
,P
i1
,...,P
i(w
‑
1)
,每个校验包通过对多个数据包进行异或计算得到;步骤二、寻找公共异或部分:构造一个带权图G=(V,E,W),其中V为点集,E为边集,W为边的权重集,点集V是mw个校验包的集合,每个校验包对应带权图G中一个点;当两个校验包P
A
【专利技术属性】
技术研发人员:吕敏,汪威,李永坤,牛天洋,徐亮亮,李启亮,许胤龙,
申请(专利权)人:中国科学技术大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。