一种数据存储纠删方法、装置、设备及可读存储介质制造方法及图纸

技术编号:34472027 阅读:57 留言:0更新日期:2022-08-10 08:46
本发明专利技术公开了一种数据存储纠删方法,包括:将每个磁盘中的数据集划分为两个数据块;从部分磁盘中选取各第一数据块,从剩余磁盘中选取各第二数据块,构建第一纠删范德蒙矩阵;对预设行数除以三向下取整得第二数值;利用预设行数减二倍的第二数值得第三数值;利用各剩余数据块构建第二纠删范德蒙矩阵中除单位阵外的前第三数值行;从各一轮选取数据块中选取部分数据块,利用各剩余数据块和各二轮选取数据块构建接下来共第二数值行;利用各剩余数据块和各一轮选取数据块中各剩余数据块构建剩余行;利用第一纠删范德蒙矩阵和/或第二纠删范德蒙矩阵进行数据纠删。本发明专利技术提高了数据纠删效率。本发明专利技术还公开一种装置、设备及存储介质,具有相应技术效果。具有相应技术效果。具有相应技术效果。

【技术实现步骤摘要】
一种数据存储纠删方法、装置、设备及可读存储介质


[0001]本专利技术涉及存储
,特别是涉及一种数据存储纠删方法、装置、设备及计算机可读存储介质。

技术介绍

[0002]面对海量数据的存储要求,分布式存储以其成本低廉,可扩展性好等优势逐渐取代了统一存储的主导地位。分布式存储系统多以成本相对较低的磁盘作为存储节点,存储节点的可靠性不高,并且一个分布式存储系统通常包含很多的节点,由于软硬件故障,人为失误等原因,系统常常发生节点失效的情况。为了提高分布式存储系统的数据可靠性,保证数据收集节点能以较高的概率实现原始文件的重构,需要在存储原始数据的基础上,额外存储一定数量的冗余,使得在出现部分节点失效的情况下,系统仍然可以正常运行,数据收集节点仍然可以对原始文件实现解码恢复。
[0003]纠删码(Erasure Code)属于编码理论中的一种前向纠错技术,由于纠删码技术在防止数据丢失取得了较好的效果,因此被引入存储领域。纠删码的种类众多,在实际存储系统中较常见的有应用在分布式环境下的RS码(Reed

Solomon Code)。RS码与两个参数k和r相关。给定两个正整数k和r,RS码将k个数据块编码为r个额外的校验块。而r个校验块基于范德蒙矩阵或柯西矩阵进行编码的方式就称为利用范德蒙矩阵编码的RS纠删码。可知纠删码的核心概念是构建一个可逆的编码矩阵用以产生校验数据,其逆矩阵可经过计算恢复原始数据。
[0004]常见的RS纠删码逆矩阵的计算采用的是高斯消元法,这种通用解法适用于任何可逆矩阵的求逆,虽然计算规律化,却会引入大量冗余运算。在数据纠删过程需要对磁盘中未被破坏的数据进行整体调用,需调用的数据量大,数据调用耗时长,数据纠删效率低。
[0005]综上所述,如何有效地解决现有的数据存储纠删方法需调用的数据量大,数据调用耗时长,数据纠删效率低等问题,是目前本领域技术人员急需解决的问题。

技术实现思路

[0006]本专利技术的目的是提供一种数据存储纠删方法,该方法较大地降低了数据纠删时的数据调用量,减少了数据调用耗时,提高了数据纠删效率;本专利技术的另一目的是提供一种数据存储纠删装置、设备及计算机可读存储介质。
[0007]为解决上述技术问题,本专利技术提供如下技术方案:
[0008]一种数据存储纠删方法,包括:
[0009]将每个磁盘中的数据集划分为两个数据块,得到各第一数据块和各第二数据块;
[0010]从第一数值个磁盘中选取各所述第一数据块,从剩余的各所述磁盘中选取各所述第二数据块,得到各一轮选取数据块,并根据磁盘总数和各所述一轮选取数据块构建第一纠删范德蒙矩阵;
[0011]获取预设矩阵行数,对所述预设矩阵行数除以三向下取整得到第二数值,利用所
述预设矩阵行数与二倍的所述第二数值进行差值计算,得到第三数值;
[0012]利用各所述磁盘中除各所述一轮选取数据块之外的各剩余第一数据块和各剩余第二数据块,构建第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行;
[0013]对各所述一轮选取数据块进行二轮选取,得到各二轮选取数据块,利用各所述剩余第一数据块、各所述剩余第二数据块和各所述二轮选取数据块构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第四数值行;其中,所述第四数值为所述第三数值与所述第二数值的加和;
[0014]利用各所述剩余第一数据块、各所述剩余第二数据块以及各所述一轮选取数据块中除各所述二轮选取数据块之外的各数据块,构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行;
[0015]当存在数据块丢失时,利用所述第一纠删范德蒙矩阵和/或所述第二纠删范德蒙矩阵进行数据纠删。
[0016]在本专利技术的一种具体实施方式中,利用各所述磁盘中除各所述一轮选取数据块之外的各剩余第一数据块和各剩余第二数据块,构建第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行,包括:
[0017]以各所述剩余第一数据块和各所述剩余第二数据块为各行参数的底数,构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行。
[0018]在本专利技术的一种具体实施方式中,从第一数值个磁盘中选取各所述第一数据块,包括:
[0019]对磁盘总数除以二向下取整得到所述第一数值;
[0020]从所述第一数值个磁盘中选取各所述第一数据块;
[0021]对各所述一轮选取数据块进行二轮选取,得到各二轮选取数据块,包括:
[0022]对所述第一数值除以二向下取整得到第五数值;
[0023]从各所述一轮选取数据块中选取所述第五数值个所述第一数据块,并选取所述第一数值与所述第五数值差值个所述第二数据块,得到各所述二轮选取数据块。
[0024]在本专利技术的一种具体实施方式中,利用各所述剩余第一数据块、各所述剩余第二数据块和各所述二轮选取数据块构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第四数值行,包括:
[0025]以各所述剩余第一数据块和各所述剩余第二数据块为各行参数的底数构建原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行的第一因子;
[0026]以各所述二轮选取数据块为各行参数的底数构建原有范德蒙矩阵的第一行至第所述第二数值行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行的第二因子;
[0027]分别对每行中的第一因子和第二因子进行异或计算得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行;其中,每行中第一因子包含的参数的指数与第二因子包含的参数的指数的差值为所述第三数值。
[0028]在本专利技术的一种具体实施方式中,利用各所述剩余第一数据块、各所述剩余第二数据块以及各所述一轮选取数据块中除各所述二轮选取数据块之外的各数据块,构建所述
第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行,包括:
[0029]以各所述剩余第一数据块和各所述剩余第二数据块为各行参数的底数构建原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行的第三因子;
[0030]以各所述一轮选取数据块中除各所述二轮选取数据块之外的各数据块为各行参数的底数构建原有范德蒙矩阵的第一行至第所述第二数值行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行的第四因子;
[0031]分别对每行中的第三因子和第四因子进行异或计算得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行;其中,每行中第三因本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种数据存储纠删方法,其特征在于,包括:将每个磁盘中的数据集划分为两个数据块,得到各第一数据块和各第二数据块;从第一数值个磁盘中选取各所述第一数据块,从剩余的各所述磁盘中选取各所述第二数据块,得到各一轮选取数据块,并根据磁盘总数和各所述一轮选取数据块构建第一纠删范德蒙矩阵;获取预设矩阵行数,对所述预设矩阵行数除以三向下取整得到第二数值,利用所述预设矩阵行数与二倍的所述第二数值进行差值计算,得到第三数值;利用各所述磁盘中除各所述一轮选取数据块之外的各剩余第一数据块和各剩余第二数据块,构建第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行;对各所述一轮选取数据块进行二轮选取,得到各二轮选取数据块,利用各所述剩余第一数据块、各所述剩余第二数据块和各所述二轮选取数据块构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第四数值行;其中,所述第四数值为所述第三数值与所述第二数值的加和;利用各所述剩余第一数据块、各所述剩余第二数据块以及各所述一轮选取数据块中除各所述二轮选取数据块之外的各数据块,构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至第所述预设矩阵行数行;当存在数据块丢失时,利用所述第一纠删范德蒙矩阵和/或所述第二纠删范德蒙矩阵进行数据纠删。2.根据权利要求1所述的数据存储纠删方法,其特征在于,利用各所述磁盘中除各所述一轮选取数据块之外的各剩余第一数据块和各剩余第二数据块,构建第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行,包括:以各所述剩余第一数据块和各所述剩余第二数据块为各行参数的底数,构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第一行至第所述第三数值行。3.根据权利要求1所述的数据存储纠删方法,其特征在于,从第一数值个磁盘中选取各所述第一数据块,包括:对磁盘总数除以二向下取整得到所述第一数值;从所述第一数值个磁盘中选取各所述第一数据块;对各所述一轮选取数据块进行二轮选取,得到各二轮选取数据块,包括:对所述第一数值除以二向下取整得到第五数值;从各所述一轮选取数据块中选取所述第五数值个所述第一数据块,并选取所述第一数值与所述第五数值差值个所述第二数据块,得到各所述二轮选取数据块。4.根据权利要求3所述的数据存储纠删方法,其特征在于,利用各所述剩余第一数据块、各所述剩余第二数据块和各所述二轮选取数据块构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第四数值行,包括:以各所述剩余第一数据块和各所述剩余第二数据块为各行参数的底数构建原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行的第一因子;以各所述二轮选取数据块为各行参数的底数构建原有范德蒙矩阵的第一行至第所述第二数值行,得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一
行至第所述第四数值行的第二因子;分别对每行中的第一因子和第二因子进行异或计算得到所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第三数值行的下一行至第所述第四数值行;其中,每行中第一因子包含的参数的指数与第二因子包含的参数的指数的差值为所述第三数值。5.根据权利要求3所述的数据存储纠删方法,其特征在于,利用各所述剩余第一数据块、各所述剩余第二数据块以及各所述一轮选取数据块中除各所述二轮选取数据块之外的各数据块,构建所述第二纠删范德蒙矩阵中原有范德蒙矩阵的第所述第四数值行的下一行至...

【专利技术属性】
技术研发人员:刘洺睿吴睿振
申请(专利权)人:山东云海国创云计算装备产业创新中心有限公司
类型:发明
国别省市:

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

1