[发明专利]一种数据存储方法、系统、设备及存储介质有效
申请号: | 202210371393.1 | 申请日: | 2022-04-11 |
公开(公告)号: | CN114465627B | 公开(公告)日: | 2022-07-08 |
发明(设计)人: | 吴睿振;张旭;陈静静;张永兴;王凛 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | H03M13/15 | 分类号: | H03M13/15 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 钱湾湾 |
地址: | 215100 江苏省苏州*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 存储 方法 系统 设备 介质 | ||
本申请公开了一种数据存储方法,应用于编码技术领域,包括:接收待编码数据;确定出用于RS编码的编码矩阵及所使用的伽罗华域GF(2m);将编码矩阵中的各个元素替换为相应的矩阵,得到仅包括1和0的编码稀疏矩阵;替换时满足:元素a和b在伽罗华域中进行的四则运算与矩阵H(a)和H(b)在伽罗华域中进行的四则运算等价;通过编码稀疏矩阵进行待编码数据的编码,得到编码数据,以使得在电路中通过异或电路以及选择电路完成编码;将编码数据和待编码数据组合成编码后的数据。应用本申请的方案,可以进行数据的编码,且在硬件实现上具有高速性。本申请还公开了一种数据存储系统、设备及存储介质,具有相应效果。
技术领域
本发明涉及编码技术领域,特别是涉及一种数据存储方法、系统、设备及存储介质。
背景技术
目前,面对海量数据的存储需求,分布式存储得到了广泛的应用。分布式存储系统中的节点数量较多,单个节点的可靠性通常不会很高,且由于软硬件故障,人为失误等原因,导致系统常常发生节点失效的情况。因此,为了提高分布式存储系统的数据可靠性,实现原始文件的重构,会在存储原始数据的基础上,额外存储一定数量的数据冗余,使得在出现部分节点失效的情况下,仍然可以对原始文件实现解码恢复,保障系统的正常运行。
EC(Erasure Code,纠删码)是编码理论中的一种向前纠错技术,可以在保证相同可靠性的前提下有效地降低存储开销,被广泛地应用于各大存储系统以及数据中心。纠删码的种类众多,RS码(Reed-Solomon Code,里德所罗门码)是实际存储系统中较常见的一种。RS码将k个数据块编码为r个额外的校验块。而这r个校验块基于范德蒙矩阵或柯西矩阵进行编码的获得方式就称为利用范德蒙矩阵或柯西矩阵编码的RS纠删码,可以表示为:
公式(1)
公式(2)
其中,公式(1)表示的是采用范德蒙矩阵进行RS编码,公式(2)表示的是采用柯西矩阵进行RS编码。以公式(1)为例,范德蒙矩阵上部分表示的是k*k的单位矩阵,该单位矩阵与原始数据D1至Dk相乘,得到的结果仍然是原始数据D1至Dk。下部分的是r*k的编码矩阵,与原始数据D1至Dk相乘,得到的P1至Pr就是通过编码所得到的r个编码数据,或者称为校验数据,当D1至Pr中的至多r个数据出错或者丢失时,利用剩余数据对应矩阵的逆矩阵,与这些剩余数据相乘,便可以得到原始数据D1至Dk。例如当D1至Dr丢失时,解码过程可以表示为公式(3)。
公式(3)
可以看出,纠删码的核心是构建一个可逆的编码矩阵,编码后利用编码的逆矩阵来恢复原始编码的数据。常见的RS纠删码使用的是柯西矩阵或范德蒙矩阵,所得到的矩阵完全可逆,并且矩阵的大小扩充简单。
但是,在实际的设计中,计算机中还要考虑数字大小限制,例如k个32位整数作为原始数据,在通过上述的柯西矩阵或范德蒙矩阵生成校验数据时,校验数据的数值几乎确定会溢出,因此,在计算机中进行RS编码时,会设定伽罗华域来保证计算结果在伽罗华域中。
在实际设计中,矩阵运算的参数乘加对于有着大数据量处理需求的存储环境而言,运算起来非常复杂,一般这种场景下的硬件需要设计一个伽罗华域运算的专门模块,通过伽罗华域乘法和除法减少运算的数据量增加。而这样的专门运算模块,相比于原本的范德蒙和柯西运算思路,会造成额外的面积及速度损耗。
综上所述,如何有效地实现数据的冗余存储,且保障计算的高效性,是目前本领域技术人员急需解决的技术问题。
发明内容
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210371393.1/2.html,转载请声明来源钻瓜专利网。
- 同类专利
- 专利分类
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置