CN114610241A - 一种改进磁盘阵列解码速度的方法、装置、设备及介质 - Google Patents

一种改进磁盘阵列解码速度的方法、装置、设备及介质 Download PDF

Info

Publication number
CN114610241A
CN114610241A CN202210268061.0A CN202210268061A CN114610241A CN 114610241 A CN114610241 A CN 114610241A CN 202210268061 A CN202210268061 A CN 202210268061A CN 114610241 A CN114610241 A CN 114610241A
Authority
CN
China
Prior art keywords
disk
data
disk array
block
parity chunk
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.)
Pending
Application number
CN202210268061.0A
Other languages
English (en)
Inventor
吴睿振
王明明
崔健
王凛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Original Assignee
Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd filed Critical Shandong Yunhai Guochuang Cloud Computing Equipment Industry Innovation Center Co Ltd
Priority to CN202210268061.0A priority Critical patent/CN114610241A/zh
Publication of CN114610241A publication Critical patent/CN114610241A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/061Improving I/O performance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • G06F11/1004Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's to protect a block of data words, e.g. CRC or checksum
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/064Management of blocks
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • G06F3/0689Disk arrays, e.g. RAID, JBOD

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Security & Cryptography (AREA)
  • Quality & Reliability (AREA)
  • Detection And Correction Of Errors (AREA)

Abstract

本发明提供了一种改进磁盘阵列解码速度的方法、装置、设备及可读介质,该方法包括:响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;基于设定的第一校验块获取第二校验块的位置;基于预设公式计算每个条带中设定的第一校验块的数据。通过使用本发明的方案,能够在磁盘阵列发生单一磁盘错误解码时读取较少磁盘数,能够提高磁盘阵列解码的速度。

Description

一种改进磁盘阵列解码速度的方法、装置、设备及介质
技术领域
本发明涉及计算机领域,并且更具体地涉及一种改进磁盘阵列解码速度的方法、装置、设备及可读介质。
背景技术
伴随着通讯技术和网络科技的迅速发展,数字化信息呈指数爆炸式增长,数据存储技术也因此迎来了巨大的挑战。存储系统中数据的可靠性问题以及存储系统的能耗问题越来越被人们所关注。现如今面对如此庞大的数据规模,存储系统中数据的可靠性和存储系统中包含的组件数量成反比关系,即存储系统组件数越多,那么存储系统中数据的可靠性就越低。根据相关调查显示,在一个由600个磁盘构成的互联网数据中心中,每月大约会有30个磁盘出现损坏的情况,在大规模存储系统中,磁盘故障造成的数据可靠性下降是相当严重的问题,对此人们展开了相关容错技术的研究。
在1988年,加州大学伯克利分校的D.A.Patterson等教授提出的RAID结构成为了提升存储空间的一个关键技术,RAID(Redundant Arrays of Independent Disks)即具有冗余能力的磁盘阵列,磁盘阵列是通过将多个独立磁盘组合一起,从而得到一个容量巨大的磁盘组。采用RAID存储技术,可以大大提高存储容量,提高系统输入输出的请求处理能力并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。
RAID 6是带两种分布存储的奇偶校验码独立磁盘结构。它是对RAID 5的扩展,主要是用于要求数据绝对不能出错的场合。由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,进一步提升了磁盘阵列的数据可靠性。需要更多的空间来存储校验值,同时在写操作中具有更高的性能损失。RAID技术在当今分布式存储服务器中得到了广泛的应用,RAID 5和6可以分别恢复一个或两个的错误块,但是每次数据恢复,依然受限于各个盘大量数据读取时的速度限制。
现有的技术环境下,RAID组里的数据块(磁盘)越来越多,而任意一个或两个数据块错误的时候,通过RAID 6进行的RAID组都需要读取剩余的所有磁盘数据进行恢复,这样读取的数据量巨大,在有限IOPS的限制下,恢复的速度很慢。
发明内容
有鉴于此,本发明实施例的目的在于提出一种改进磁盘阵列解码速度的方法、装置、设备及可读介质,通过使用本发明的技术方案,能够在磁盘阵列发生单一磁盘错误解码时读取较少磁盘数,能够提高磁盘阵列解码的速度。
基于上述目的,本发明的实施例的一个方面提供了一种改进磁盘阵列解码速度的方法,包括以下步骤:
响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
基于设定的第一校验块获取第二校验块的位置;
基于预设公式计算每个条带中设定的第一校验块的数据。
根据本发明的一个实施例,基于预设公式计算每个条带中设定的第一校验块的数据包括:
使用公式:
Figure BDA0003553170970000021
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
根据本发明的一个实施例,基于设定的第一校验块获取第二校验块的位置包括:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
根据本发明的一个实施例,还包括:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
本发明的实施例的另一个方面,还提供了一种改进磁盘阵列解码速度的装置,装置包括:
设置模块,设置模块配置为响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
获取模块,获取模块配置为基于设定的第一校验块获取第二校验块的位置;
计算模块,计算模块配置为基于预设公式计算每个条带中设定的第一校验块的数据。
根据本发明的一个实施例,计算模块还配置为:
使用公式:
Figure BDA0003553170970000031
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
根据本发明的一个实施例,获取模块还配置为:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
根据本发明的一个实施例,还包括统计模块,统计模块配置为:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
本发明的实施例的另一个方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机指令,指令由处理器执行时实现上述任意一项方法的步骤。
本发明的实施例的另一个方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现上述任意一项方法的步骤。
本发明具有以下有益技术效果:本发明实施例提供的改进磁盘阵列解码速度的方法,通过响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;基于设定的第一校验块获取第二校验块的位置;基于预设公式计算每个条带中设定的第一校验块的数据的技术方案,能够在磁盘阵列发生单一磁盘错误解码时读取较少磁盘数,能够提高磁盘阵列解码的速度。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1为根据本发明一个实施例的改进磁盘阵列解码速度的方法的示意性流程图;
图2为根据本发明一个实施例满足左旋不对齐的负载均衡方式的磁盘阵列布局的示意图;
图3为根据本发明一个实施例的改进磁盘阵列解码速度的装置的示意图;
图4为根据本发明一个实施例的计算机设备的示意图;
图5为根据本发明一个实施例的计算机可读存储介质的示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
基于上述目的,本发明的实施例的第一个方面,提出了一种改进磁盘阵列解码速度的方法的一个实施例。图1示出的是该方法的示意性流程图。
如图1中所示,该方法可以包括以下步骤:
S1响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块。
S2基于设定的第一校验块获取第二校验块的位置。
在实际的磁盘阵列组工作中,编码时,因为P1(第一校验块)和P2(第二校验块)是基于负载均衡算法所确定的,因此为了减少参数运算的算力损耗,一般会通过P1的位置,基于负载均衡计算出P2的位置,然后直接得到满足负载均衡下所有条带中的P1和P2对应的位置信息,以及此位置信息对应的所有编码参数信息。这样的操作可以使得每一条带进行编码运算时,利用空闲时间提前运算得到参数,参数的位置关系通过负载均衡算法得到,然后针对数据信息的位置计算得到每个数据参与编码运算时的参数信息,将参数信息存入固定的参数表内,涉及的编码基于此表读取参数分别乘以数据,所得结果连加得到和即可。在磁盘阵列中发生单一错误(一个磁盘发生错误)时,假设错误磁盘位置为编码时负载均衡中的P1所在位置,则基于错误位置信息以负载均衡算法得到另一个校验块P2的位置信息。
S3基于预设公式计算每个条带中设定的第一校验块的数据。
预设公式的运算针对的数据是除了上述设为P1和P2外的其他的所有数据,通过伽罗华域乘法完成数据和参数的乘法后,通过异或完成所有数据的加法即可得到对应的错误盘所有的数据。具体公式为:
Figure BDA0003553170970000061
Figure BDA0003553170970000062
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。通过上述公式计算得到该条带中数据块的数据,其他条带中的数据块的数据同样使用上述公式,当所有条带的数据块恢复后,该错误的磁盘的数据就可以恢复。在本发明的一个实施例中,磁盘阵列为RAID 6。
通过本发明的技术方案,能够在磁盘阵列发生单一磁盘错误解码时读取较少磁盘数,能够提高磁盘阵列解码的速度。
在本发明的一个优选实施例中,基于预设公式计算每个条带中设定的第一校验块的数据包括:
使用公式:
Figure BDA0003553170970000063
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
传统的磁盘阵列完成编码组建后,对于任意其中两个以下的错误,都可以恢复。磁盘阵列组建的编码原理为:
Figure BDA0003553170970000064
这里的P1和P2表示通过磁盘阵列编码所产生的两个校验块,传统的磁盘阵列的参数赋值方式符合公式(1)中所给出方式,即是第一行的参数全部为1,第二行参数符合范德蒙公式构造原理的1234…方式构造。校验块的位置不同,导致其所对应的参数不同。
而决定校验块和数据块位置的方式为负载均衡算法,如图2所示,给出了5个磁盘,其中3个磁盘用来存储用户数据,满足左旋不对齐的负载均衡方式的磁盘阵列布局的方式。如图2所示,第一行给出了不同的位置对应的参数标号,则在此负载均衡情况下,第一行的P1和P2分别在位置5和位置1的位置,其对应的磁盘阵列的公式则为:
Figure BDA0003553170970000071
当P1和P2分别在5号盘和1号盘时,所对应的编码方式如公式(2)所示,因此不同的条带行,基于负载均衡的算法需求,会有不同的对应位置,即会有不同参数及其所对应的编码关系式。
继续通过公式(1)的编码情况,对磁盘阵列的解码进行举例。在完成上述的磁盘阵列编码后,发生其中任意1个或2个的错误,都可以恢复。当发生一个错误时,以公式(1)的情况进行举例,此时数据盘和校验盘的总数为m+2块,所满足的编码关系公式为(1)所示,则其中dx发生了错误且1<x<m,则需要恢复的运算公式为:
Figure BDA0003553170970000072
可知当发生一个错误时,磁盘阵列的恢复方式和RAID5相同,即是取出所有的残存数据,进行异或运算即可。当发生两个错误时,以公式(1)的情况进行举例,假设此时发生错误的是dx和dy且1<x<y<m,则需要恢复的运算公式为:
Figure BDA0003553170970000081
基于上述可知,假设所组建的磁盘阵列中的总的磁盘数(数据盘+校验盘)为n个,在发生一个错误时,恢复方式如公式(3)所述,需要读取的磁盘量为n-1个;在发生两个错误时,恢复方式如公式(4)所述,需要读取的磁盘量为n-2个。
发生两个错误时,虽然其读取磁盘进行恢复的参数产生方式相比发生一个错误时的参数(全为1)更复杂些,但是其读取的磁盘量少一个。对于现今的技术,参数运算的复杂度对于专有硬件而言并不大,反而是磁盘数据读取量在磁盘IOPS的限制下,多读取一块磁盘对恢复的速度影响很大。实际应用中发现,99.7%的情况为单一磁盘错误需要恢复的场景,因此本发明考虑的是将磁盘阵列在单一磁盘错误的恢复通过类似两个磁盘错误的方式来恢复,减少一个磁盘的读取量,以达到提高速度的改进。因此在磁盘阵列中发生一个磁盘错误时,假设该磁盘为第一校验盘,则每个条带相应的位置则为第一校验块,同时基于上述假设的第一校验盘找到对应的第二校验盘,并同时假设该第二校验盘也发生错误,此时,可以通过公式(4)进行数据恢复,因为假设的是第一校验盘和第二校验盘都发生错误,因此公式中涉及到除了校验盘外所有数据盘中的数据,相比常规的恢复方式少读取一个磁盘(第二校验盘)的数据。
在本发明的一个优选实施例中,基于设定的第一校验块获取第二校验块的位置包括:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
在本发明的一个优选实施例中,还包括:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
实施例
如图2所示,当磁盘4发生错误时,记录磁盘4的每一个位置都为负载均衡中P1(第一校验块)的发生位置,而基于左旋不对齐的负载均衡算法,则得到P2(第二校验块)对应的位置为磁盘5的位置。此时4号磁盘的所有数据恢复只需要读取1、2和3三块磁盘的对应的信息即可进行恢复。以条带一此时磁盘4的D2数据块需要进行恢复为例,则此时的运算公式为
Figure BDA0003553170970000091
其中x和y分别对应P1和P2对应的位置信息,因此x=4,y=5。
条带一是D2数据,其恢复运算为:
Figure BDA0003553170970000092
Figure BDA0003553170970000093
通过以上计算恢复得到D2,所读取数据为P2,D0,D1三块,相比传统磁盘阵列在单一错误时的恢复数据需要读取四块的数量,减少了一块数据的读取需求。同理应用于其他条带,可以对磁盘4进行恢复,只需要读取三块磁盘的数据,减少一块磁盘的读取需求,提高解码速度。
在不同的应用场景,任意错误的磁盘位置,都可以设为P1或P2,则相应的P2或P1的设定可以通过上述复用负载均衡的算法设定,也可通过其他方式决定,所使用的磁盘量依然会达到减少一块的优势。
通过本发明的技术方案,能够在磁盘阵列发生单一磁盘错误解码时读取较少磁盘数,能够提高磁盘阵列解码的速度。
需要说明的是,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关硬件来完成,上述的程序可存储于计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中存储介质可为磁碟、光盘、只读存储器(Read-Only Memory,ROM)或随机存取存储器(Random AccessMemory,RAM)等。上述计算机程序的实施例,可以达到与之对应的前述任意方法实施例相同或者相类似的效果。
此外,根据本发明实施例公开的方法还可以被实现为由CPU执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被CPU执行时,执行本发明实施例公开的方法中限定的上述功能。
基于上述目的,本发明的实施例的第二个方面,提出了一种改进磁盘阵列解码速度的装置,如图3所示,装置200包括:
设置模块,设置模块配置为响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
获取模块,获取模块配置为基于设定的第一校验块获取第二校验块的位置;
计算模块,计算模块配置为基于预设公式计算每个条带中设定的第一校验块的数据。
在本发明的一个优选实施例中,计算模块还配置为:
使用公式:
Figure BDA0003553170970000101
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
在本发明的一个优选实施例中,获取模块还配置为:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
在本发明的一个优选实施例中,还包括统计模块,统计模块配置为:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
基于上述目的,本发明实施例的第三个方面,提出了一种计算机设备。图4示出的是本发明提供的计算机设备的实施例的示意图。如图4所示,本发明实施例包括如下装置:至少一个处理器21;以及存储器22,存储器22存储有可在处理器上运行的计算机指令23,指令由处理器执行时实现以下方法:
响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
基于设定的第一校验块获取第二校验块的位置;
基于预设公式计算每个条带中设定的第一校验块的数据。
在本发明的一个优选实施例中,基于预设公式计算每个条带中设定的第一校验块的数据包括:
使用公式:
Figure BDA0003553170970000111
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
在本发明的一个优选实施例中,基于设定的第一校验块获取第二校验块的位置包括:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
在本发明的一个优选实施例中,还包括:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
基于上述目的,本发明实施例的第四个方面,提出了一种计算机可读存储介质。图5示出的是本发明提供的计算机可读存储介质的实施例的示意图。如图5所示,计算机可读存储介质31存储有被处理器执行时执行如下方法的计算机程序32:
响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
基于设定的第一校验块获取第二校验块的位置;
基于预设公式计算每个条带中设定的第一校验块的数据。
在本发明的一个优选实施例中,基于预设公式计算每个条带中设定的第一校验块的数据包括:
使用公式:
Figure BDA0003553170970000121
计算设定的第一校验块的数据,其中dp1为设定的第一校验块的数据,x为设定的第一校验块在条带中位置的序号,y为第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
在本发明的一个优选实施例中,基于设定的第一校验块获取第二校验块的位置包括:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
在本发明的一个优选实施例中,还包括:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
此外,根据本发明实施例公开的方法还可以被实现为由处理器执行的计算机程序,该计算机程序可以存储在计算机可读存储介质中。在该计算机程序被处理器执行时,执行本发明实施例公开的方法中限定的上述功能。
此外,上述方法步骤以及系统单元也可以利用控制器以及用于存储使得控制器实现上述步骤或单元功能的计算机程序的计算机可读存储介质实现。
本领域技术人员还将明白的是,结合这里的公开所描述的各种示例性逻辑块、模块、电路和算法步骤可以被实现为电子硬件、计算机软件或两者的组合。为了清楚地说明硬件和软件的这种可互换性,已经就各种示意性组件、方块、模块、电路和步骤的功能对其进行了一般性的描述。这种功能是被实现为软件还是被实现为硬件取决于具体应用以及施加给整个系统的设计约束。本领域技术人员可以针对每种具体应用以各种方式来实现的功能,但是这种实现决定不应被解释为导致脱离本发明实施例公开的范围。
在一个或多个示例性设计中,功能可以在硬件、软件、固件或其任意组合中实现。如果在软件中实现,则可以将功能作为一个或多个指令或代码存储在计算机可读介质上或通过计算机可读介质来传送。计算机可读介质包括计算机存储介质和通信介质,该通信介质包括有助于将计算机程序从一个位置传送到另一个位置的任何介质。存储介质可以是能够被通用或专用计算机访问的任何可用介质。作为例子而非限制性的,该计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其它光盘存储设备、磁盘存储设备或其它磁性存储设备,或者是可以用于携带或存储形式为指令或数据结构的所需程序代码并且能够被通用或专用计算机或者通用或专用处理器访问的任何其它介质。此外,任何连接都可以适当地称为计算机可读介质。例如,如果使用同轴线缆、光纤线缆、双绞线、数字用户线路(DSL)或诸如红外线、无线电和微波的无线技术来从网站、服务器或其它远程源发送软件,则上述同轴线缆、光纤线缆、双绞线、DSL或诸如红外线、无线电和微波的无线技术均包括在介质的定义。如这里所使用的,磁盘和光盘包括压缩盘(CD)、激光盘、光盘、数字多功能盘(DVD)、软盘、蓝光盘,其中磁盘通常磁性地再现数据,而光盘利用激光光学地再现数据。上述内容的组合也应当包括在计算机可读介质的范围内。
以上是本发明公开的示例性实施例,但是应当注意,在不背离权利要求限定的本发明实施例公开的范围的前提下,可以进行多种改变和修改。根据这里描述的公开实施例的方法权利要求的功能、步骤和/或动作不需以任何特定顺序执行。此外,尽管本发明实施例公开的元素可以以个体形式描述或要求,但除非明确限制为单数,也可以理解为多个。
应当理解的是,在本文中使用的,除非上下文清楚地支持例外情况,单数形式“一个”旨在也包括复数形式。还应当理解的是,在本文中使用的“和/或”是指包括一个或者一个以上相关联地列出的项目的任意和所有可能组合。
上述本发明实施例公开实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
所属领域的普通技术人员应当理解:以上任何实施例的讨论仅为示例性的,并非旨在暗示本发明实施例公开的范围(包括权利要求)被限于这些例子;在本发明实施例的思路下,以上实施例或者不同实施例中的技术特征之间也可以进行组合,并存在如上的本发明实施例的不同方面的许多其它变化,为了简明它们没有在细节中提供。因此,凡在本发明实施例的精神和原则之内,所做的任何省略、修改、等同替换、改进等,均应包含在本发明实施例的保护范围之内。

Claims (10)

1.一种改进磁盘阵列解码速度的方法,其特征在于,包括以下步骤:
响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
基于所述设定的第一校验块获取第二校验块的位置;
基于预设公式计算每个条带中所述设定的第一校验块的数据。
2.根据权利要求1所述的方法,其特征在于,基于预设公式计算每个条带中所述设定的第一校验块的数据包括:
使用公式:
Figure FDA0003553170960000011
计算所述设定的第一校验块的数据,其中dp1为所述设定的第一校验块的数据,x为所述设定的第一校验块在条带中位置的序号,y为所述第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
3.根据权利要求1所述的方法,其特征在于,基于所述设定的第一校验块获取第二校验块的位置包括:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
4.根据权利要求1所述的方法,其特征在于,还包括:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将所述布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
5.一种改进磁盘阵列解码速度的装置,其特征在于,包括:
设置模块,所述设置模块配置为响应于磁盘阵列中一个磁盘发生错误,将发生错误的磁盘中的每个条带的数据块都设定为磁盘阵列中的第一校验块;
获取模块,所述获取模块配置为基于所述设定的第一校验块获取第二校验块的位置;
计算模块,所述计算模块配置为基于预设公式计算每个条带中所述设定的第一校验块的数据。
6.根据权利要求5所述的装置,其特征在于,所述计算模块还配置为:
使用公式:
Figure FDA0003553170960000021
计算所述设定的第一校验块的数据,其中dp1为所述设定的第一校验块的数据,x为所述设定的第一校验块在条带中位置的序号,y为所述第二校验块在条带中位置的序号,d1为第一个数据块,d2为第二个数据块,dn为第n个数据块,n为数据块的个数。
7.根据权利要求5所述的装置,其特征在于,所述获取模块还配置为:
获取发生错误磁盘在磁盘阵列中的位置;
基于发生错误磁盘在磁盘阵列中的位置通过负载均衡算法获取第二校验块在磁盘阵列中的位置。
8.根据权利要求5所述的装置,其特征在于,还包括统计模块,所述统计模块配置为:
通过负载均衡算法计算磁盘阵列中各个磁盘的校验块和数据块的布局方式;
将所述布局方式中每个条带中每个数据块和校验块的位置信息统计到表格中。
9.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器上运行的计算机指令,所述指令由所述处理器执行时实现权利要求1-4任意一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-4任意一项所述方法的步骤。
CN202210268061.0A 2022-03-18 2022-03-18 一种改进磁盘阵列解码速度的方法、装置、设备及介质 Pending CN114610241A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210268061.0A CN114610241A (zh) 2022-03-18 2022-03-18 一种改进磁盘阵列解码速度的方法、装置、设备及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210268061.0A CN114610241A (zh) 2022-03-18 2022-03-18 一种改进磁盘阵列解码速度的方法、装置、设备及介质

Publications (1)

Publication Number Publication Date
CN114610241A true CN114610241A (zh) 2022-06-10

Family

ID=81865559

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210268061.0A Pending CN114610241A (zh) 2022-03-18 2022-03-18 一种改进磁盘阵列解码速度的方法、装置、设备及介质

Country Status (1)

Country Link
CN (1) CN114610241A (zh)

Similar Documents

Publication Publication Date Title
US9582363B2 (en) Failure domain based storage system data stripe layout
US8489916B2 (en) Multi-disk fault-tolerant system, method for generating a check block, and method for recovering a data block
CN101719086B (zh) 磁盘阵列容错处理方法和装置及容错系统
US10558524B2 (en) Computing system with data recovery mechanism and method of operation thereof
CN112860475B (zh) 基于rs纠删码的校验块恢复方法、装置、系统及介质
CN115080303B (zh) Raid6磁盘阵列的编码方法、解码方法、装置及介质
WO2013147794A1 (en) Enhanced storage of metadata utilizing improved error detection and correction in computer memory
CN116501553B (zh) 数据恢复方法、装置、系统、电子设备及存储介质
CN114546272A (zh) 快速通用的raid降级为raid5的方法、系统、设备和存储介质
US7870464B2 (en) System and method for recovery of data for a lost sector in a storage system
US20120198195A1 (en) Data storage system and method
Venkatesan et al. Effect of codeword placement on the reliability of erasure coded data storage systems
CN114756402A (zh) Raid组更新数据时保障数据安全的方法、系统、设备及介质
CN114610244A (zh) 一种独立冗余磁盘阵列降级方法、系统及设备
CN104850504A (zh) 一种加速基于xor的raid-6编解码过程的方程并行计算方法
CN114610525A (zh) 一种用于磁盘阵列的数据更新方法、系统及存储介质
CN116450048A (zh) Raid6磁盘阵列降级为raid5磁盘阵列的方法
CN114895842A (zh) 一种tp-raid编解码方法、系统、设备及存储介质
CN114115729B (zh) 一种raid下的高效数据迁移方法
US20170192858A1 (en) Computing system with data protection mechanism with soft information and method of operation thereof
CN115167787B (zh) 一种数据转存方法、系统、设备及计算机可读存储介质
CN114610241A (zh) 一种改进磁盘阵列解码速度的方法、装置、设备及介质
Song et al. A Low complexity design of reed solomon code algorithm for advanced RAID system
CN114756175A (zh) 一种用于磁盘阵列的解码方法、系统、设备及介质
CN114996047A (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