CN114816837B - 一种纠删码融合方法、系统、电子设备及存储介质 - Google Patents
一种纠删码融合方法、系统、电子设备及存储介质 Download PDFInfo
- Publication number
- CN114816837B CN114816837B CN202210738362.5A CN202210738362A CN114816837B CN 114816837 B CN114816837 B CN 114816837B CN 202210738362 A CN202210738362 A CN 202210738362A CN 114816837 B CN114816837 B CN 114816837B
- Authority
- CN
- China
- Prior art keywords
- blocks
- data
- check code
- cabinet
- fusion
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000007500 overflow downdraw method Methods 0.000 title claims abstract description 24
- 230000004927 fusion Effects 0.000 claims abstract description 92
- 230000015556 catabolic process Effects 0.000 claims abstract description 53
- 238000006731 degradation reaction Methods 0.000 claims abstract description 53
- 238000000034 method Methods 0.000 claims description 54
- 230000005012 migration Effects 0.000 claims description 16
- 238000013508 migration Methods 0.000 claims description 16
- 230000008569 process Effects 0.000 claims description 16
- 238000004422 calculation algorithm Methods 0.000 claims description 13
- 238000004590 computer program Methods 0.000 claims description 10
- 238000013507 mapping Methods 0.000 claims description 5
- 238000012795 verification Methods 0.000 claims description 4
- 238000004364 calculation method Methods 0.000 abstract description 17
- 238000013500 data storage Methods 0.000 abstract description 7
- 239000011159 matrix material Substances 0.000 description 22
- 238000010586 diagram Methods 0.000 description 20
- 230000005540 biological transmission Effects 0.000 description 11
- 238000004891 communication Methods 0.000 description 5
- 230000002441 reversible effect Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 3
- 230000006872 improvement Effects 0.000 description 3
- 238000012545 processing Methods 0.000 description 3
- 238000012937 correction Methods 0.000 description 2
- 238000013480 data collection Methods 0.000 description 2
- 230000008030 elimination Effects 0.000 description 2
- 238000003379 elimination reaction Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000011084 recovery Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 230000008263 repair mechanism Effects 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/08—Error detection or correction by redundancy in data representation, e.g. by using checking codes
- G06F11/10—Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
- G06F11/1076—Parity data used in redundant arrays of independent storages, e.g. in RAID systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0604—Improving or facilitating administration, e.g. storage management
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0638—Organizing or formatting or addressing of data
- G06F3/064—Management of blocks
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/067—Distributed or networked storage systems, e.g. storage area networks [SAN], network attached storage [NAS]
Abstract
本申请公开了一种纠删码融合方法、系统、电子设备及存储介质。所属的技术领域为数据存储技术领域。所述纠删码融合方法应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合方法,包括:按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;根据所述校验码块分布情况对多个所述条带中的校验码块进行融合,本申请能够降低纠删码融合操作的计算量。
Description
技术领域
本申请涉及数据存储技术领域,特别涉及一种纠删码融合方法、系统、电子设备及存储介质。
背景技术
面对海量数据的存储要求,分布式存储以其成本低廉,可扩展性好等优势逐渐取代了统一存储的主导地位,在理论研究和实际应用方面得到了越来越多的关注。分布式存储系统多以廉价的磁盘作为存储节点,每个存储节点的可靠性往往不会很高;另一方面,分布式存储系统通常包含很多的节点,由于软硬件故障,人为失误等原因,系统常常发生节点失效的情况。为了提高分布式存储系统的数据可靠性,保证数据收集节点能以很高的概率实现原始文件的重构,需要在存储原始数据的基础上,额外存储一定数量的冗余,使得在出现部分节点失效的情况下,系统仍然可以正常运行,数据收集节点仍然可以对原始文件实现解码恢复。同时,为了维持系统的可靠性,需要对失效的节点及时进行修复,因此良好的节点修复机制十分重要。
纠删码(Erasure Code)属于编码理论中的一种前向纠错技术,最早应用于通信领域以解决数据传输中的丢失与损耗这类问题。由于纠删码技术在防止数据丢失取得了较好的效果,因此被引入存储领域。纠删码可以在保证相同可靠性的前提下有效地降低存储开销,因此纠删码技术被广泛地应用于各大存储系统以及数据中心。
纠删码的种类众多,在实际存储系统中较常见的有应用在分布式环境下的RS码(Reed-Solomon Code,里德所罗门码)。RS码与两个参数k和r相关。给定两个正整数k和r,RS码将k个数据块编码为r个额外的校验码块。而r个校验码块基于范德蒙矩阵或柯西矩阵进行编码的方式就称为利用范德蒙矩阵或柯西矩阵编码的RS纠删码。
常见的RS纠删码逆矩阵的计算采用的是高斯消元法,这种通用解法适用于任何可逆矩阵的求逆,但是没有针对矩阵编码的特性进行优化,因此虽然计算规律化,却会引入大量冗余运算。当存储k个数据块,添加r个校验数据块的情况下,需要恢复的单个数据块错误的几率较高,而使用高斯消元需要(k+r)3次运算,才能得到所需要的逆矩阵,然后恢复相应的数据块。
在分布式存储下,多个机柜通过网络连接,通过上层主机的控制,实现存储及其安全备份功能。实际应用中,存在用户对使用的降级融合需求,而此时因为分布式存储的空间使用问题,机柜内部的硬件计算和外部网络连接速度的问题,不同的操作方式会有不同的速度表现,传统的操作方式为基于标准的编码流程重新组建纠删组,这样的方式速度很慢,损耗很大。
因此,如何降低纠删码融合操作的计算量是本领域技术人员目前需要解决的技术问题。
发明内容
本申请的目的是提供一种纠删码融合方法、系统、一种存储介质及一种电子设备,能够降低纠删码融合操作的计算量。
为解决上述技术问题,本申请提供一种纠删码融合方法,应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合方法,包括:
按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;其中,所述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据;
若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;
根据所述校验码块分布情况对多个所述条带中的校验码块进行融合。
可选的,在接收到降级融合指令之后,还包括:
确定所述分布式存储系统中的剩余机柜数量;其中,所述剩余机柜数量为所述分布式存储系统中未存储校验码块的机柜的数量;
将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值;
将存储的数据块数量大于所述参考阈值的机柜设置为待迁移机柜,并将所述待迁移机柜中的数据块迁移至空闲机柜。
可选的,将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值,包括:
判断所述数据块的数量和所述剩余机柜数量的比值是否为整数;
若是,则将所述数据块的数量和所述剩余机柜数量的比值设置为所述参考阈值;
若否,则对所述数据块的数量和所述剩余机柜数量的比值向上取整,将向上取整结果设置为所述参考阈值。
可选的,若所述数据块的数量和所述剩余机柜数量的比值不为整数,还包括:
对所述数据块的数量和所述剩余机柜数量的比值向下取整,将存储的数据块数量小于向下取整结果的机柜设置为所述空闲机柜。
可选的,将所述待迁移机柜中的数据块迁移至空闲机柜,包括:
按照预设约束条件将所述待迁移机柜中的数据块迁移至空闲机柜;其中,所述预设约束条件为:所有所述数据块处于同一条带。
可选的,在将所述待迁移机柜中的数据块迁移至空闲机柜之后,还包括:
按照负载均衡算法对所述分布式存储系统中的数据块存储位置进行调整,以使任意两个机柜中存储的数据块数量差小于预设差值。
可选的,根据所述校验码块分布情况对多个所述条带中的校验码块进行融合,包括:
根据所述校验码块分布情况将所有所述校验码块划分为多个码块组,每一码块组中所有校验码块对应的r的数值相同;
将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;
将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜,以便在同一机柜中进行融合,得到新校验码块。
可选的,将同一所述码块组中处于同一机柜的校验码块进行融合,包括:
按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,所述预设公式为:
Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;
Pr’为新校验码块,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据。
可选的,在将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜之前,还包括:
判断校验码块迁移对应的数据量是否大于预设数据量;
若是,则确定所述降级融合指令对应的降级需求,并根据数据码块生成符合所述降级需求的新校验码块。
若否,则进入将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜的操作。
可选的,所述降级融合指令的生成过程包括:
判断所述分布式存储系统中是否存在目标条带;所述目标条带为读写频率小于预设频率的条带;
若是,则生成所述降级融合指令。
可选的,还包括:
通过调整条带地址映射关系将所述数据块移动至同一条带中。
可选的,在根据所述校验码块分布情况对多个所述条带中的校验码块进行融合之后,还包括:
计算所述分布式存储系统当前的冗余比例,并将所述当前的冗余比例上传至用户界面。
本申请还提供了一种纠删码融合系统,应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合系统,包括:
校验生成模块,用于按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;
其中,所述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据;
分布情况获取模块,用于若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;
融合模块,用于根据所述校验码块分布情况对多个所述条带中的校验码块进行融合。
本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述纠删码融合方法执行的步骤。
本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述纠删码融合方法执行的步骤。
本申请提供了一种纠删码融合方法,应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合方法,包括:按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;其中,所述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据;若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;根据所述校验码块分布情况对多个所述条带中的校验码块进行融合。
本申请按照预设规则生成所有条带中数据块的校验码块,上述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据,不同条带中的第r个校验码块可以直接融合。在收到降级融合指令之后获取所述分布式存储系统中多个条带的校验码块分布情况,可以根据校验码块分布情况将不同条带中r值相同的校验码块进行融合,无需根据数据块重新计算校验码块,本申请能够降低纠删码融合操作的计算量。本申请同时还提供了一种纠删码融合系统、一种存储介质和一种电子设备,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例所提供的一种纠删码融合方法的流程图;
图2为本申请实施例所提供的一种分布式存储系统的结构示意图;
图3为本申请实施例所提供的一种数据块迁移方法的流程图;
图4为本申请实施例所提供的一种校验码块融合方法的流程图;
图5为本申请实施例所提供的一种纠删码保护下的数据存储原理示意图;
图6为常规的纠删码融合操作原理示意图;
图7为本申请实施例所提供的一种分布式存储系统的数据存储示意;
图8为本申请实施例所提供的第一组校验码块融合结果示意图;
图9为本申请实施例所提供的第二组校验码块融合结果示意图;
图10为本申请实施例所提供的第三组校验码块融合结果示意图;
图11为本申请实施例所提供的一种纠删码融合系统的结构示意图;
图12为本申请实施例所提供的一种电子设备的结构示意图;
图13为本申请实施例所提供的一种存储介质的结构示意图。
具体实施方式
为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
下面请参见图1,图1为本申请实施例所提供的一种纠删码融合方法的流程图。
具体步骤可以包括:
S101:按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;
其中,本实施例可以应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块。请参见图2,图2为本申请实施例所提供的一种分布式存储系统的结构示意图;图2中的举例有4个机柜,每个机柜插有多块硬盘,硬盘基于操作设置不同的块大小(chunk size),每个块是存储操作的基本单位,在上层控制时进行操作能看到的操作单位即为块。如图2中,同一行的块处于同一条带。每个机柜会有一块自己的控制硬件,通过PCIE等方式连接并控制多块磁盘,接收上层的需求后,划分不同数量的块进行相应的编解码。机柜与机柜之间通过网线等方式连接,然后通过插在交换机上进行相应的命令转移和控制。交换机上层是主机,面向用户将不同的用户需求拆解为不同的命令,分别下发进行相应的控制。
本实施例可以在分布式存储系统的每一条带中存储数据块,并基于纠删码算法生成数据块的校验码,机柜中存储校验码的块为校验码块。上述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据。上式中的加法运算都是伽罗华域下的加法运算。
S102:若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;
其中,降级融合指令为控制分布式存储系统执行降级融合操作的指令,上述降级融合操作指:通过合并校验码块将分布式存储系统中的冗余比降低的方式。冗余比为校验码块数量与数据块数量之比。在接收到降级融合指令后,可以获取分布式存储系统中多个条带的校验码块分布情况,上述校验码块分布情况包括各个校验码块所在的机柜位置。
作为一种可行的实施方式,在本步骤之前还可以存在生成降级融合指令的操作,其过程包括:判断所述分布式存储系统中是否存在目标条带;所述目标条带为读写频率小于预设频率的条带;若是,则生成所述降级融合指令。
S103:根据所述校验码块分布情况对多个所述条带中的校验码块进行融合。
其中,根据校验码块分布情况可以确定不同条带中的第r个校验码块所在的机柜位置,以便将r值(即校验码块序号)相同的校验码块进行融合。以两个条带为例,说明校验码块融合操作:
第x个条带中的第j个校验码块为dx,1×j0+dx,2×j1+…+dx,m×jm-1,第y个条带中的第j个校验码块为dy,1×j0+dy,2×j1+…+dy,m×jm-1,按照以下公式进行校验码块融合:Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;Pr’为融合后的新校验码块。上式中,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据。由于本实施例中按照预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1生成校验码块,可以使r值相同的校验码块直接融合,无需根据数据块重新计算校验码块。
作为一种可行的实施方式,本实施例还可以通过调整条带地址映射关系将所述数据块移动至同一条带中,以便对分布式存储系统中的数据进行管理。
作为另一种可行的实施方式,在根据所述校验码块分布情况对多个所述条带中的校验码块进行融合之后,还可以计算所述分布式存储系统当前的冗余比例,并将所述当前的冗余比例上传至用户界面。
本实施例按照预设规则生成所有条带中数据块的校验码块,上述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据,不同条带中的第r个校验码块可以直接融合。在收到降级融合指令之后获取所述分布式存储系统中多个条带的校验码块分布情况,可以根据校验码块分布情况将不同条带中r值相同的校验码块进行融合,无需根据数据块重新计算校验码块,本实施例能够降低纠删码融合操作的计算量。
请参见图3,图3为本申请实施例所提供的一种数据块迁移方法的流程图,可以将本实施例与图1对应的实施例相结合得到进一步的实施方式,在接收到降级融合指令之后,还可以执行以下操作:
S301:确定所述分布式存储系统中的剩余机柜数量;其中,所述剩余机柜数量为所述分布式存储系统中未存储校验码块的机柜的数量;
S302:将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值;
S303:将存储的数据块数量大于参考阈值的机柜设置为待迁移机柜,并将所述待迁移机柜中的数据块迁移至空闲机柜。
作为一种可行的实施方式,将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值的过程包括:判断所述数据块的数量和所述剩余机柜数量的比值是否为整数;若是,则将所述数据块的数量和所述剩余机柜数量的比值设置为所述参考阈值;若否,则对所述数据块的数量和所述剩余机柜数量的比值向上取整,将向上取整结果设置为所述参考阈值。
进一步的,若所述数据块的数量和所述剩余机柜数量的比值不为整数,还可以对所述数据块的数量和所述剩余机柜数量的比值向下取整,将存储的数据块数量小于向下取整结果的机柜设置为所述空闲机柜。
进一步的,本实施例可以通过以下方式将所述待迁移机柜中的数据块迁移至空闲机柜:按照预设约束条件将所述待迁移机柜中的数据块迁移至空闲机柜;其中,所述预设约束条件为:所有所述数据块处于同一条带。
进一步的,在将所述待迁移机柜中的数据块迁移至空闲机柜之后,还可以按照负载均衡算法对所述分布式存储系统中的数据块存储位置进行调整,以使任意两个机柜中存储的数据块数量差小于预设差值。
请参见图4,图4为本申请实施例所提供的一种校验码块融合方法的流程图,可以将本实施例与图1对应的实施例相结合得到进一步的实施方式,上述校验码块融合指:将多个校验码块中的校验码进行融合得到一个新的校验码块。图4对应的实施例可以包括以下步骤:
S401:根据校验码块分布情况将所有校验码块划分为多个码块组,每一码块组中所有校验码块对应的r的数值相同;
S402:将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;
S403:将同一码块组中不处于同一机柜的校验码块迁移至同一机柜,以便在同一机柜中进行融合,得到新校验码块。
以处于同一机柜的两个条带进行校验码块融合为例,可以通过以下方式将同一所述码块组中处于同一机柜的校验码块进行融合:按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,预设公式为:Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;Pr’为新校验码块,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据。校验码块融合具体指校验码块中的数据的融合。上述j表示条带中第j个校验块。
以处于同一机柜的多个条带进行校验码块融合为例,可以通过以下方式将同一所述码块组中处于同一机柜的校验码块进行融合:按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,预设公式为:
Pr’=dx1,1×j0+dx1,2×j1+…+dx1,m×jm-1+( dx2,1×j0+dx2,2×j1+…+dx2,m×jm-1)×jm+( dx3,1×j0+dx3,2×j1+…+dx3,m×jm-1)×jm+1+…+( dxz,1×j0+dxz,2×j1+…+dxz,m×jm-1)×jm -2+z;Pr’为新校验码块,dx1,1、dx1,2…、dx1,m为第x1个条带中第1至第m个数据块的数据,dx2,1、d x2,2…、d x2,m为第x2个条带中第1至第m个数据块的数据, dx3,1、d x3,2…、d x3,m为第x3个条带中第1至第m个数据块的数据, dxz,1、d xz,2…、d xz,m为第xz个条带中第1至第m个数据块的数据。
进一步的,在将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜之前,还可以判断校验码块迁移对应的数据量是否大于预设数据量;若是,则确定所述降级融合指令对应的降级需求,并根据数据码块生成符合所述降级需求的新校验码块。若否,则进入将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜的操作。
下面通过在实际应用中的实施例说明上述实施例描述的流程。
常规的纠删码编码过程如下:
基于范德蒙矩阵的RS纠删码:
基于柯西矩阵的RS纠删码:
以上内容中的k*k矩阵对应的就是k个原始数据块,下部分的r*k矩阵对应的就是编码矩阵,通过与原始数据D1到Dk相乘,得到新添加的P1到Pr就是编码所得到的r个校验数据。当其中任意做多r个数据在传输中出错或丢失,需要纠错时,即用剩余数据对应矩阵的逆矩阵与数据相乘,即会得到原始数据块D1到Dk。
以D1到Dr数据丢失,进行解码为例,RS纠删码恢复数据方式如下所示:
可知纠删码的核心概念是构建一个可逆的编码矩阵用以产生校验数据,其逆矩阵可经过计算恢复原始数据。常见的RS纠删码使用的是上面介绍的柯西矩阵或范德蒙矩阵,这样的优势是所得到的矩阵肯定可逆,其任意子矩阵也都可逆,并且矩阵的大小扩充简单。
分布式存储下通常有多个机柜,每个机柜中有多个磁盘,主机面向的会是多个用户的不同需求,而不同用户的数据都有数据安全性的需求,因此分布式存储的数据需要通过纠删码对其进行保护。请参见图5,图5为本申请实施例所提供的一种纠删码保护下的数据存储原理示意图。
如图5中所示,举例了几种分布式存储下对数据进行保护的类型。第一行的数据存储分别为a和b,用户需求需要其可以校验纠正任意两个错误,因此基于纠删算法,这里的第3机柜和第4机柜分别存储了基于范德蒙所生成的第1和第2个校验码块,基于范德蒙算法,分别是a+b和a+2b,这里的加法运算都是伽罗华域下的加法,实际表现为异或运算。第二和第三行表现的是用户数据没有存满,且只需要一个错误校验纠正的存储情况,此时校验码分别基于范德蒙算法生成的校验码分别是c+d和e+f,具体运算同上。第四行只有一个数据,因此校验码为g。图5为举例说明不同情况下的区别,具体场景远比其复杂。
在图5中的存储情况下,此时假设第二行和第三行的存储场景是同一个用户的需求,此时的冗余比为1/2,即是说此时通过数据保护,每两个用户数据,会生成一个校验数据,这样的保护效果虽然好,但是成本较高。此时假设用户数据的安全性需求下降了,有可能会出现主诉降低冗余比,进行降级融合的需求,将冗余比下降为1/4,即是出现c,d,e,f通过共同生成一个校验码的情况,基于范德蒙算法,此时的校验码应该为c+d+e+f。对于传统的操作方式而言,首先需要对涉及的数据块进行移位,然后重新计算校验码部分。对于上例中的情况,传统操作情况如图6所示,图6为常规的纠删码融合操作原理示意图。图6所示的操作涉及了较多机柜间的操作,且编码需要重新做,速度损耗较大,当涉及多个校验码的重新计算时损耗更大。
为解决上述相关技术中存在的问题,本申请实施例提供了一种分布式存储下RS纠删码的高效融合方案,该方案适用于各种情况,减少机柜间的数据传输,降低了运算复杂度。请参见图7,图7为本申请实施例所提供的一种分布式存储系统的数据存储示意图,图7所示的场景为同一个用户的存储情况,以便对同一个用户的数据进行降级融合。如图7的举例说明了一种实际情况,此时假设机柜较多,同一个用户的数据存储也较多,涉及本发明需要处理的不同场景,可以分为如上第一组、第二组和第三组三种。综合的划分场景,可以分为以下两种情况:情况1、是否需要调整数据块以达到负载均衡;情况 2、降级融合涉及运算的校验码块的关系。本实施例可以判断两种情况,然后进行不同的操作,即可达到最优化降级融合。
本实施例基于范德蒙算法生成校验码的方式如下:
上式中d为待编码用户数据,m为待编码的用户数据量,r为基于冗余比需求的校验数量。
本实施例可以判断数据块调整情况及校验码调整情况,并分场景进行操作。数据块调整情况下分为是否需要调整数据块两类。校验码调整情况下分为使用校验码块计算和使用数据块进行计算两类。不同情况通过图7 中第一组、第二组和第三组举例说明,下面分别对不同情况下的本发明处理方案进行说明。
第一组:
以第一组情况举例说明,此时校验码块在相同的机柜4、5、6内,数据块平均分布在了剩余的机柜内。因此此时的场景为:无需调整数据块以及校验码块完全重合的场景。
对于是否满足无需调整数据块的情况,判断方法为:设除了校验码存放的机柜外剩余数据块可存放的机柜数为m,总数据块为k,则在第一组中m=5,k=6。
其中pu和pd为p分别的向上取整和向下取整值。
则当每机柜内现在数据块数量w满足pd≤w≤pu时,则判定为无需调整数块的情况,此时数据块完全不做操作,保持原位置。
在第一组中各机柜的数据块数量均小于或等于2(即pu)且大于或等于1(即pd),故第一组中的数据块无需迁移。
进一步的,第一组中校验码块完全重合,降级融合后对应的第一组的数据情况为:a~f,基于相同的范德蒙算法,为得到降级融合后的校验码p1~p3条件,则需要有:
以上公式中的加法运算均为伽罗华域运算。
而我们现有第一行和第二行分别的校验码p1.1~p1.3和p2.1~p2.3关系为:
当校验码块在同一个机柜内重合时,使用校验码块直接进行融合计算,具体方法如下:
上式中的r为用户选择冗余比后所确定的校验码块数量,在第一组中,每三个用户数据,会生成3个校验码块进行保护,则相应的r=3。针对对应的p1,p2,p3选择1,2,3依次类推作为底,进行r的幂次运算,然后相加即可得到所需要的融合后的结果。
以上述第一组情况为例,则这里的计算为:
请参见图8,图8为本申请实施例所提供的第一组校验码块融合结果示意图,此时数据融合在数据迁移方面没有任何用户数据需要迁移;在校验码融合上,只需要基于p1,2,p2,2,p2,3进行计算,而计算都在机柜内部,基于SoC控制下,利用PCIe等通信协议进行传输,完成计算即可。不涉及机柜间的传输,且数据计算需求量小,可以获得很大的速度提升。
第二组:
本实施例可以通过以下方式判断数据块调整情况及校验码调整情况,此时基于上文公式,m=5,k=4,pu=1,pw=0,根据各个机柜的实际存储情况,可以将机柜2中的数据块i迁移至机柜5。基于负载均衡算法还可以将数据块j迁移至机柜6。迁移针对同条带下任意空白机柜进行数据迁移皆可为准,则这里将i和j分别迁移至机柜5和机柜6。
第二组中的机柜4的校验码块有重合,但因为机柜4的校验码块更新需要用到的是机柜5的i+2j,机柜3需要用到机柜4的i+j,因此机柜4和5都需要对校验码块进行迁移。请参见图9,图9为本申请实施例所提供的第二组校验码块融合结果示意图。融合后的校验码块为g+h+(i+j)和g+2h+4(1+2j)。
第三组:
本实施例可以通过以下方式判断数据块调整情况及校验码调整情况,此时基于上文公式,m=4,k=4,参考阈值为1,此时无须进行数据迁移,则各个数据保持机柜内原始位置。其中m和n在条带6,可以在静默状态下更新地址,调整条带地址映射关系,使其在同一条带内即可。第三组中校验块完全没有重合,则机柜7和8内的m+n和m+2n分别进行迁移,然后进行融合运算,最终得到结果如图10,图10为本申请实施例所提供的第三组校验码块融合结果示意图。迁移后的校验码块为k+l+(m+n)以及k+2l+4(m+2n)。
根据图10可知,这里m+n和m+2n分别进行了跨机柜的迁移,而校验码块m和n其实并非涉及数据迁移,仅仅改变主机host中对应的地址即可。
上述实施例中所有运算都是伽罗华域运算,其中的数据迁移排布方式满足不同的负载均衡算法的要求即可。
本实施例改变了数据编码方式、校验块和数据块的判断情况,不同情况下针对数据块和校验块的场景的不同操作问题,当需要融合时的数据迁移判断方式和迁移方式,当需要融合时的校验块运算方式。本实施例针对不同场景,尽量多利用机柜内运算,减少机柜间网络工作的方案,提高降级融合的效率。
本实施例基于分布式存储下用户需求,或场景需求进行降级融合操作的情况,提出了一种高效简易的操作方案。通过改变编码方式,所组建的分布式存储组可以在判断数据块和校验块的情况,进行融合降级的操作,该融合降级减少了机柜间的数据传输,并且使校验块的计算只需要基于被融合数据的原本校验块即可,简化了运算,更多的利用机柜内的PCIe的高速数据传输协议,而降低机柜间的不必要传输,降低CPU的负载,减少通道占用,从而达到速度的最优化。
请参见图11,图11为本申请实施例所提供的一种纠删码融合系统的结构示意图,该系统可以应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合系统,包括:
校验生成模块1101,用于按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;
其中,所述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据;
分布情况获取模块1102,用于若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;
融合模块1103,用于根据所述校验码块分布情况对多个所述条带中的校验码块进行融合。
本实施例按照预设规则生成所有条带中数据块的校验码块,上述预设规则为Pn,r=d n,1×r0+d n,2×r1+…+d n,m×rm-1,P n,r为第n个条带中第r个校验码块的数据,d n,m为第n个条带中第m个数据块的数据,不同条带中的第r个校验码块可以直接融合。在收到降级融合指令之后获取所述分布式存储系统中多个条带的校验码块分布情况,可以根据校验码块分布情况将不同条带中r值相同的校验码块进行融合,无需根据数据块重新计算校验码块,本实施例能够降低纠删码融合操作的计算量。
进一步的,还包括:
数据块迁移模块,用于在接收到降级融合指令之后,确定所述分布式存储系统中的剩余机柜数量;其中,所述剩余机柜数量为所述分布式存储系统中未存储校验码块的机柜的数量;还用于将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值;还用于将存储的数据块数量大于所述参考阈值的机柜设置为待迁移机柜,并将所述待迁移机柜中的数据块迁移至空闲机柜。
进一步的,数据块迁移模块将所述数据块的数量和所述剩余机柜数量的比值设置参考阈值的过程包括:判断所述数据块的数量和所述剩余机柜数量的比值是否为整数;若是,则将所述数据块的数量和所述剩余机柜数量的比值设置为所述参考阈值;若否,则对所述数据块的数量和所述剩余机柜数量的比值向上取整,将向上取整结果设置为所述参考阈值。
进一步的,还包括:
空闲机柜确定模块,用于若所述数据块的数量和所述剩余机柜数量的比值不为整数,对所述数据块的数量和所述剩余机柜数量的比值向下取整,将存储的数据块数量小于向下取整结果的机柜设置为所述空闲机柜。
进一步的,数据块迁移模块将所述待迁移机柜中的数据块迁移至空闲机柜的过程包括:按照预设约束条件将所述待迁移机柜中的数据块迁移至空闲机柜;其中,所述预设约束条件为:所有所述数据块处于同一条带。
进一步的,还包括:
负载均衡模块,用于在将所述待迁移机柜中的数据块迁移至空闲机柜之后,按照负载均衡算法对所述分布式存储系统中的数据块存储位置进行调整,以使任意两个机柜中存储的数据块数量差小于预设差值。
进一步的,融合模块1103根据所述校验码块分布情况对多个所述条带中的校验码块进行融合的过程包括:根据所述校验码块分布情况将所有所述校验码块划分为多个码块组,每一码块组中所有校验码块对应的r的数值相同;将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜,以便在同一机柜中进行融合,得到新校验码块。
进一步的,融合模块1103将同一所述码块组中处于同一机柜的校验码块进行融合的过程包括:按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,所述预设公式为:Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;Pr’为新校验码块,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据。
进一步的,还包括:
判断模块,用于在将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜之前,判断校验码块迁移对应的数据量是否大于预设数据量;若是,则确定所述降级融合指令对应的降级需求,并根据数据码块生成符合所述降级需求的新校验码块;若否,则进入将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜的操作。
进一步的,所述降级融合指令的生成过程包括:判断所述分布式存储系统中是否存在目标条带;所述目标条带为读写频率小于预设频率的条带;若是,则生成所述降级融合指令。
进一步的,还包括:
条带调整模块,用于通过调整条带地址映射关系将所述数据块移动至同一条带中。
进一步的,还包括:
反馈模块,用于在根据所述校验码块分布情况对多个所述条带中的校验码块进行融合之后,计算所述分布式存储系统当前的冗余比例,并将所述当前的冗余比例上传至用户界面。
本实施例基于分布式存储下用户需求,或场景需求进行降级融合操作的情况,提出了一种高效简易的操作方案。通过改变编码方式,所组建的分布式存储组可以在判断数据块和校验块的情况,进行融合降级的操作,该融合降级减少了机柜间的数据传输,并且使校验块的计算只需要基于被融合数据的原本校验块即可,简化了运算,更多的利用机柜内的PCIe的高速数据传输协议,而降低机柜间的不必要传输,降低CPU的负载,减少通道占用,从而达到速度的最优化。
由于系统部分的实施例与方法部分的实施例相互对应,因此系统部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述实施例所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。图12为本申请实施例所提供的一种电子设备的结构示意图,如图12所示,电子设备包括:
通信接口1201,能够与其它设备比如网络设备等进行信息交互;
处理器1202,与通信接口1201连接,以实现与其它设备进行信息交互,用于运行计算机程序时,执行上述一个或多个技术方案提供的纠删码融合方法。而所述计算机程序存储在存储器1203上。
当然,实际应用时,电子设备中的各个组件通过总线系统1204耦合在一起。可理解,总线系统1204用于实现这些组件之间的连接通信。总线系统1204除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图12中将各种总线都标为总线系统1204。
本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述实施例所提供的步骤。该存储介质可以包括:半导体存储芯片、U盘、移动硬盘、只读存储器(Read-Only Memory ,ROM)、随机存取存储器(Random Access Memory ,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。图13为本申请实施例所提供的一种存储介质的结构示意图,该存储介质可以为半导体存储芯片,具体包括译码驱动、存储矩阵、读写电路、地址线、数据线、片选线和读/写控制线。
说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (13)
1.一种纠删码融合方法,其特征在于,应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合方法,包括:
按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;其中,所述预设规则为Pn,r=dn,1×r0+dn,2×r1+…+dn,m×rm-1,Pn,r为第n个条带中第r个校验码块的数据,dn,m为第n个条带中第m个数据块的数据;r表示校验码块序号;
若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;所述降级融合指令为控制分布式存储系统执行降级融合操作的指令,上述降级融合操作指:通过合并校验码块将分布式存储系统中的冗余比降低的方式;冗余比为校验码块数量与数据块数量之比;
根据所述校验码块分布情况对多个所述条带中的校验码块进行融合;
其中,根据所述校验码块分布情况对多个所述条带中的校验码块进行融合,包括:
根据所述校验码块分布情况将所有所述校验码块划分为多个码块组,每一码块组中所有校验码块对应的r的数值相同;
将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;
将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜,以便在同一机柜中进行融合,得到新校验码块;
其中,将同一所述码块组中处于同一机柜的校验码块进行融合,包括:
按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,所述预设公式为:
Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;
Pr’为新校验码块,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据,j表示条带中第j个校验块。
2.根据权利要求1所述纠删码融合方法,其特征在于,在接收到降级融合指令之后,还包括:
确定所述分布式存储系统中的剩余机柜数量;其中,所述剩余机柜数量为所述分布式存储系统中未存储校验码块的机柜的数量;
将所述数据块的数量和所述剩余机柜数量的比值设置为参考阈值;
将存储的数据块数量大于所述参考阈值的机柜设置为待迁移机柜,并将所述待迁移机柜中的数据块迁移至空闲机柜。
3.根据权利要求2所述纠删码融合方法,其特征在于,将所述数据块的数量和所述剩余机柜数量的比值设置为参考阈值,包括:
判断所述数据块的数量和所述剩余机柜数量的比值是否为整数;
若是,则将所述数据块的数量和所述剩余机柜数量的比值设置为所述参考阈值;
若否,则对所述数据块的数量和所述剩余机柜数量的比值向上取整,将向上取整结果设置为所述参考阈值。
4.根据权利要求3所述纠删码融合方法,其特征在于,若所述数据块的数量和所述剩余机柜数量的比值不为整数,还包括:
对所述数据块的数量和所述剩余机柜数量的比值向下取整,将存储的数据块数量小于向下取整结果的机柜设置为所述空闲机柜。
5.根据权利要求2所述纠删码融合方法,其特征在于,将所述待迁移机柜中的数据块迁移至空闲机柜,包括:
按照预设约束条件将所述待迁移机柜中的数据块迁移至空闲机柜;其中,所述预设约束条件为:所有所述数据块处于同一条带。
6.根据权利要求2所述纠删码融合方法,其特征在于,在将所述待迁移机柜中的数据块迁移至空闲机柜之后,还包括:
按照负载均衡算法对所述分布式存储系统中的数据块存储位置进行调整,以使任意两个机柜中存储的数据块数量差小于预设差值。
7.根据权利要求1所述纠删码融合方法,其特征在于,在将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜之前,还包括:
判断校验码块迁移对应的数据量是否大于预设数据量;
若是,则确定所述降级融合指令对应的降级需求,并根据数据码块生成符合所述降级需求的新校验码块;
若否,则进入将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜的操作。
8.根据权利要求1所述纠删码融合方法,其特征在于,所述降级融合指令的生成过程包括:
判断所述分布式存储系统中是否存在目标条带;所述目标条带为读写频率小于预设频率的条带;
若是,则生成所述降级融合指令。
9.根据权利要求1所述纠删码融合方法,其特征在于,还包括:
通过调整条带地址映射关系将所述数据块移动至同一条带中。
10.根据权利要求1所述纠删码融合方法,其特征在于,在根据所述校验码块分布情况对多个所述条带中的校验码块进行融合之后,还包括:
计算所述分布式存储系统当前的冗余比例,并将所述当前的冗余比例上传至用户界面。
11.一种纠删码融合系统,其特征在于,应用于分布式存储系统,所述分布式存储系统包括多个机柜,所述机柜中包括数据块,所述纠删码融合系统,包括:
校验生成模块,用于按照预设规则在所述分布式存储系统的机柜中生成所有条带的数据块的校验码块;
其中,所述预设规则为Pn,r=dn,1×r0+dn,2×r1+…+dn,m×rm-1,Pn,r为第n个条带中第r个校验码块的数据,dn,m为第n个条带中第m个数据块的数据;r表示校验码块序号;
分布情况获取模块,用于若接收到降级融合指令,则获取所述分布式存储系统中多个条带的校验码块分布情况;所述降级融合指令为控制分布式存储系统执行降级融合操作的指令,上述降级融合操作指:通过合并校验码块将分布式存储系统中的冗余比降低的方式;冗余比为校验码块数量与数据块数量之比;
融合模块,用于根据所述校验码块分布情况对多个所述条带中的校验码块进行融合;
其中,所述融合模块根据所述校验码块分布情况对多个所述条带中的校验码块进行融合的过程包括:根据所述校验码块分布情况将所有所述校验码块划分为多个码块组,每一码块组中所有校验码块对应的r的数值相同;将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;将同一所述码块组中不处于同一机柜的校验码块迁移至同一机柜,以便在同一机柜中进行融合,得到新校验码块;
其中,所述融合模块将同一所述码块组中处于同一机柜的校验码块进行融合的过程包括:按照预设公式将同一所述码块组中处于同一机柜的校验码块进行融合,得到新校验码块;其中,所述预设公式为:
Pr’=dx,1×j0+dx,2×j1+…+dx,m×jm-1+( dy,1×j0+dy,2×j1+…+dy,m×jm-1)×jm;
Pr’为新校验码块,dx,1、dx,2…、dx,m为第x个条带中第1至第m个数据块的数据,dy,1、dy,2…、dy,m为第y个条带中第1至第m个数据块的数据,j表示条带中第j个校验块。
12.一种电子设备,其特征在于,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现如权利要求1至10任一项所述纠删码融合方法的步骤。
13.一种存储介质,其特征在于,所述存储介质中存储有计算机可执行指令,所述计算机可执行指令被处理器加载并执行时,实现如权利要求1至10任一项所述纠删码融合方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210738362.5A CN114816837B (zh) | 2022-06-28 | 2022-06-28 | 一种纠删码融合方法、系统、电子设备及存储介质 |
PCT/CN2022/142520 WO2024001126A1 (zh) | 2022-06-28 | 2022-12-27 | 一种纠删码融合方法、系统、电子设备及非易失性可读存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210738362.5A CN114816837B (zh) | 2022-06-28 | 2022-06-28 | 一种纠删码融合方法、系统、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114816837A CN114816837A (zh) | 2022-07-29 |
CN114816837B true CN114816837B (zh) | 2022-12-02 |
Family
ID=82522616
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210738362.5A Active CN114816837B (zh) | 2022-06-28 | 2022-06-28 | 一种纠删码融合方法、系统、电子设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN114816837B (zh) |
WO (1) | WO2024001126A1 (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114816837B (zh) * | 2022-06-28 | 2022-12-02 | 苏州浪潮智能科技有限公司 | 一种纠删码融合方法、系统、电子设备及存储介质 |
CN114995770B (zh) * | 2022-08-02 | 2022-12-27 | 苏州浪潮智能科技有限公司 | 一种数据处理方法、装置、设备、系统及可读存储介质 |
CN116312724B (zh) * | 2023-05-16 | 2023-08-15 | 苏州浪潮智能科技有限公司 | 一种适用于两校验编码存储系统数据存储方法和装置 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10635533B2 (en) * | 2018-07-30 | 2020-04-28 | EMC IP Holding Company LLC | Efficient computation of parity data in storage system implementing data striping |
US20200241781A1 (en) * | 2019-01-29 | 2020-07-30 | Dell Products L.P. | Method and system for inline deduplication using erasure coding |
CN110442535B (zh) * | 2019-07-19 | 2021-06-11 | 华中科技大学 | 提高分布式固态盘键值缓存系统可靠性的方法及系统 |
CN113918378A (zh) * | 2020-07-10 | 2022-01-11 | 华为技术有限公司 | 数据存储方法、存储系统、存储设备及存储介质 |
CN112860475B (zh) * | 2021-02-04 | 2023-02-28 | 山东云海国创云计算装备产业创新中心有限公司 | 基于rs纠删码的校验块恢复方法、装置、系统及介质 |
CN114153651B (zh) * | 2022-02-09 | 2022-04-29 | 苏州浪潮智能科技有限公司 | 一种数据编码方法、装置、设备及介质 |
CN114816837B (zh) * | 2022-06-28 | 2022-12-02 | 苏州浪潮智能科技有限公司 | 一种纠删码融合方法、系统、电子设备及存储介质 |
-
2022
- 2022-06-28 CN CN202210738362.5A patent/CN114816837B/zh active Active
- 2022-12-27 WO PCT/CN2022/142520 patent/WO2024001126A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
CN114816837A (zh) | 2022-07-29 |
WO2024001126A1 (zh) | 2024-01-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN114816837B (zh) | 一种纠删码融合方法、系统、电子设备及存储介质 | |
KR102645583B1 (ko) | 예측성 메모리 유지보수 | |
CN107526531B (zh) | 为映射独立盘冗余阵列(raid)选择raid级别的方法和设备 | |
US8327080B1 (en) | Write-back cache protection | |
US9075745B1 (en) | System and method for adding a drive to a storage system having multiple drives | |
US9811416B2 (en) | Memory access method and apparatus for message-type memory module | |
CN104052576B (zh) | 一种云存储下基于纠错码的数据恢复方法 | |
US20210271557A1 (en) | Data encoding, decoding and recovering method for a distributed storage system | |
CN109814807B (zh) | 一种数据存储方法及装置 | |
JP2018508073A (ja) | データ除去、割り当て、及び再構築 | |
CN114281270B (zh) | 一种数据存储方法、系统、设备以及介质 | |
CN105353974B (zh) | 一种适用于磁盘阵列及分布式存储系统的二容错编码方法 | |
CN112000512B (zh) | 一种数据修复方法及相关装置 | |
CN105808170A (zh) | 一种能够以最小磁盘读写修复单磁盘错误的raid6编码方法 | |
CN113505019A (zh) | 一种纠删码数据及校验恢复方法、装置、设备及可读介质 | |
KR101621752B1 (ko) | 부분접속 복구 가능한 반복분할 부호를 이용한 분산 저장 장치 및 그 방법 | |
JP6260193B2 (ja) | ストレージシステム、及びストレージプログラム | |
KR102004928B1 (ko) | 데이터 저장 장치 및 그것의 에러 정정 코드 처리 방법 | |
CN114510368A (zh) | 一种基于rs纠删码的编解码加速方法及系统 | |
CN116501553B (zh) | 数据恢复方法、装置、系统、电子设备及存储介质 | |
KR102005709B1 (ko) | 메모리 장치 구동 방법 및 메모리 시스템 | |
CN116450048A (zh) | Raid6磁盘阵列降级为raid5磁盘阵列的方法 | |
CN110600070A (zh) | 一种提升固态硬盘阵列系统修复性能的编码和修复方法 | |
CN109791472B (zh) | 冷存储系统的数据保护 | |
CN115269258A (zh) | 一种数据恢复的方法和系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |