[发明专利]一种基于纠删码的数据存储方法、装置及电子设备有效
申请号: | 201811012704.5 | 申请日: | 2018-08-31 |
公开(公告)号: | CN110874283B | 公开(公告)日: | 2021-07-20 |
发明(设计)人: | 陈伟;汪渭春 | 申请(专利权)人: | 杭州海康威视系统技术有限公司 |
主分类号: | G06F11/10 | 分类号: | G06F11/10 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 李欣;马敬 |
地址: | 310051 浙*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 基于 纠删码 数据 存储 方法 装置 电子设备 | ||
本发明实施例提供了一种基于纠删码的数据存储方法、装置及电子设备。该方法包括:向第一内存中写入待存储数据;当第一内存中的待存储数据达到目标数量的数据块的数据量时,计算第一内存中的待存储数据所对应的第一校验值;将第一校验值和第二内存中的当前内容的异或运算结果,覆盖存储到第二内存中,并将第一内存中的待存储数据转存到预设的存储设备中,返回向第一内存空间中写入待存储数据;当第二内存中的当前内容所基于的待存储数据达到预设EC类型所对应的数据存储量时,将第二内存中的当前内容作为预设EC类型所指定条带块的校验值并转存到存储设备中。与现有技术相比,应用本发明实施例提供的方案,可以减少在存储过程中所占用的内存空间。
技术领域
本发明涉及云存储技术领域,特别是涉及一种基于纠删码的数据存储方法、装置及电子设备。
背景技术
纠删码(erasurecoding,EC)是一种数据保护方法,它将数据分割成片段,把冗余数据块扩展、编码,并将其存储在不同的位置。从数据函数角度来说,纠删码提供的保护可以用下面这个简单的公式来表示:n=k+m,其中,变量“k”代表原始数据的值,变量“m”代表添加的提供保护的额外数据的值,变量“n”代表纠删码过程后创建的数据的总值,为了描述方便,上述添加的提供保护的额外数据可以简称为校验值。
现有技术中,为了实现基于纠删码的数据存储,预先申请用于保存待存储数据的第一内存和用于保存待存储数据的校验值的第二内存,其中,第一内存的大小不小于待利用的EC类型所对应的数据存储量。具体的存储过程为:
向第一内存中写入从数据源中获取的待存储数据;当第一内存中的待存储数据达到所述数据存储量时,基于与所述预设EC类型所匹配的生成矩阵,计算第一内存中的待存储数据所对应的校验值并存储到第二内存中;进而,将第一内存中的待存储数据和第二内存中的校验值转存到预定的存储设备中,完成一个条带块的存储。
可见,由于数据存储所依赖的第一内存的内存量必须不小于EC类型所对应的数据存储量,导致数据存储过程中占用的内存空间较大。尤其是当EC类型所对应的数据存储量较大或同时处理多路待存储数据时,所占用的内存空间较大的问题更加明显。
发明内容
本发明实施例的目的在于提供一种基于纠删码的数据存储方法、装置及电子设备,以实现减少在存储过程中所占用的内存空间。
具体技术方案如下:
第一方面,本发明实施例提供了一种基于纠删码的数据存储方法,所述方法包括:
向预先申请的第一内存中写入待存储数据;其中,所述第一内存所能容纳的数据块的目标数量小于预设EC类型所指定的数据块总数;
当所述第一内存中的待存储数据达到所述目标数量的数据块的数据量时,基于与所述预设EC类型所匹配的生成矩阵,计算所述第一内存中的待存储数据所对应的第一校验值;
将所计算得到的第一校验值和第二内存中的当前内容的异或运算结果,覆盖存储到所述第二内存中,并将所述第一内存中的待存储数据转存到预设的存储设备中,返回所述向第一内存空间中写入待存储数据的步骤;
当所述第二内存中的当前内容所基于的待存储数据达到所述预设EC类型所对应的数据存储量时,将所述第二内存中的当前内容作为所述预设EC类型所指定条带块的校验值并转存到所述存储设备中,完成一个条带块的存储。
作为本发明实施例的一种实施方式,所述基于与所述预设EC类型所匹配的生成矩阵,计算所述第一内存中的待存储数据所对应的第一校验值的步骤,包括:
按照所述数据块的块大小,对所述第一内存中的待存储数据进行数据块划分,得到至少一个数据块;
基于与所述预设EC类型所匹配的生成矩阵,计算所述至少一个数据块所对应的第一校验值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州海康威视系统技术有限公司,未经杭州海康威视系统技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811012704.5/2.html,转载请声明来源钻瓜专利网。
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置