【技术实现步骤摘要】
基于纠删码的数据处理方法与装置
本申请涉及存储
,更具体地,涉及一种基于纠删码的数据处理方法与执行该数据处理方法的存储控制器。
技术介绍
纠删码(erasurecode,EC)是经典的纠错编码中的一个技术分支,其核心是通过对数据块(chunk)进行编码得到校验chunk,数据chunk和校验chunk共同组成了chunk组。举例来说,假设有K个数据chunk,M个校验chunk,则通过EC编码之后的chunk组长度为K+M。对应到存储系统中,K个数据chunk和M个校验chunk分别存储到不同硬盘(或其他类型的存储设备)上,从而构成了具有容错能力的存储系统。其中,K+M称为EC的配比方式,EC通常包括传统的里德-所罗门码(reed-solomoncodes,RS)。以传统的RS码为例,对于一个K+M配比的RS码,当任意一个硬盘中的数据出错时,重建(恢复)该硬盘中的数据需读取其他硬盘中的数据。然而,随着硬盘容量越来越大,当某一硬盘发生故障时,重建该硬盘内存储的数据所需的数据读取量便会增加,重建该硬盘内存储 ...
【技术保护点】
1.一种基于纠删码的数据处理方法,其特征在于,包括:/n存储控制器获取K个数据块chunk,K为正整数;/n所述存储控制器将每个数据chunk划分成2个数据分片,获得2*K个数据分片;/n所述存储控制器根据校验矩阵,对所述2*K个数据分片进行编码,获得2*M个校验分片,所述2*M个校验分片构成M个校验chunk,M为正整数;/n所述存储控制器将所述K个数据chunk和所述M个校验chunk存入多个存储设备;/n其中,所述校验矩阵包括2*M行、2*(K+M)列元素,每一列元素对应一个数据分片或者一个校验分片,每一行元素对应一个异或方程,每一行元素对应的异或方程用于根据所述2* ...
【技术特征摘要】
20190624 CN 20191055139421.一种基于纠删码的数据处理方法,其特征在于,包括:
存储控制器获取K个数据块chunk,K为正整数;
所述存储控制器将每个数据chunk划分成2个数据分片,获得2*K个数据分片;
所述存储控制器根据校验矩阵,对所述2*K个数据分片进行编码,获得2*M个校验分片,所述2*M个校验分片构成M个校验chunk,M为正整数;
所述存储控制器将所述K个数据chunk和所述M个校验chunk存入多个存储设备;
其中,所述校验矩阵包括2*M行、2*(K+M)列元素,每一列元素对应一个数据分片或者一个校验分片,每一行元素对应一个异或方程,每一行元素对应的异或方程用于根据所述2*K个数据分片中的部分来获得一个校验分片。
2.如权利要求1所述的数据处理方法,其特征在于,所述校验矩阵是预先设置在所述存储控制器中的,所述校验矩阵符合至少一个设置规则。
3.如权利要求2所述的数据处理方法,其特征在于,所述至少一个设置规则包括:所述校验矩阵中的元素为0,1,或有限域中的元素。
4.如权利要求2或3所述的数据处理方法,其特征在于,所述至少一个设置规则包括:任一数据chunk包括的2个数据分片或任一校验chunk包括的2个校验分片在所述校验矩阵中对应的两列构成了包括2*M行、2列元素的第一子矩阵,所述第一子矩阵的任意2个偶数行或任意两个奇数行构成的2*2矩阵中的至少一个为满秩的。
5.如权利要求2至4任一所述的数据处理方法,其特征在于,所述至少一个设置规则包括:任意r个chunk包括的2*r个分片在所述校验矩阵中对应的2*r列构成了包括2*M行、2*r列元素的第二子矩阵,所述第二子矩阵的秩为2r,r为小于或等于M的整数。
6.如权利要求2至5任一所述的数据处理方法,其特征在于,还包括:
所述存储控制器确定所述K个数据chunk和所述M个校验chunk中的r个chunk损坏;
所述存储控制器根据所述校验矩阵中的多行元素对应的异或方程,重建所述损坏的r个chunk。
7.一种存储控制器,其特征在于,包括通信模块和处理模块;
所述通信模块...
【专利技术属性】
技术研发人员:曾雁星,陈亮,董如良,张进毅,付克博,
申请(专利权)人:华为技术有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。