CN115080303A - Raid6磁盘阵列的编码方法、解码方法、装置及介质 - Google Patents

Raid6磁盘阵列的编码方法、解码方法、装置及介质 Download PDF

Info

Publication number
CN115080303A
CN115080303A CN202210887332.0A CN202210887332A CN115080303A CN 115080303 A CN115080303 A CN 115080303A CN 202210887332 A CN202210887332 A CN 202210887332A CN 115080303 A CN115080303 A CN 115080303A
Authority
CN
China
Prior art keywords
disk
stripe
raid6
data
disk array
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.)
Granted
Application number
CN202210887332.0A
Other languages
English (en)
Other versions
CN115080303B (zh
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.)
Suzhou Inspur Intelligent Technology Co Ltd
Original Assignee
Suzhou Inspur Intelligent Technology 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 Suzhou Inspur Intelligent Technology Co Ltd filed Critical Suzhou Inspur Intelligent Technology Co Ltd
Priority to CN202210887332.0A priority Critical patent/CN115080303B/zh
Publication of CN115080303A publication Critical patent/CN115080303A/zh
Application granted granted Critical
Publication of CN115080303B publication Critical patent/CN115080303B/zh
Priority to PCT/CN2023/077973 priority patent/WO2024021594A1/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1076Parity data used in redundant arrays of independent storages, e.g. in RAID systems
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Signal Processing For Digital Recording And Reproducing (AREA)

Abstract

本发明涉及存储领域,尤其涉及一种RAID6磁盘阵列的编码方法、解码方法、装置及介质。所述编码方法包括:将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;根据第一规则和第二规则计算若干条带对中每个条带的两个校验码,第一规则为每一条带上第一磁盘组和第二磁盘组的各个数据进行异或运算结果等于零,第二规则为同一条带对中一个条带上第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。本发明的方案丰富了RAID6磁盘阵列的编解码方式,有助于减少单一磁盘错误时读取的数据量。

Description

RAID6磁盘阵列的编码方法、解码方法、装置及介质
技术领域
本发明涉及存储领域,尤其涉及一种RAID6磁盘阵列的编码方法、解码方法、装置及介质。
背景技术
伴随着通讯技术和网络科技的迅速发展,数字化信息呈指数爆炸式增长,数据存储技术也因此迎来了巨大的挑战。存储系统中数据的可靠性问题以及存储系统的能耗问题越来越被人们所关注。现如今面对如此庞大的数据规模,存储系统中数据的可靠性和存储系统中包含的组件数量成反比关系,即存储系统组件数越多,那么存储系统中数据的可靠性就越低。根据相关调查显示,在一个由600个磁盘构成的互联网数据中心中,每月大约会有30个磁盘出现损坏的情况,在大规模存储系统中,磁盘故障造成的数据可靠性下降是相当严重的问题,对此人们展开了相关容错技术的研究。
在1988年,加州大学伯克利分校的D. A. Patterson等教授提出的RAID结构成为了提升存储空间的一个关键技术,RAID(Redundant Arrays of Independent Disks)即具有冗余能力的磁盘阵列,磁盘阵列是通过将多个独立磁盘组合一起,从而得到一个容量巨大的磁盘组。采用RAID存储技术,可以大大提高存储容量,提高系统输入输出的请求处理能力并且通过数据的分布式存储技术,并行访问手段和信息冗余技术提高数据的可靠性。RAID的设计思想被提出之后,很快就被业界所接纳,RAID 技术作为高性能、高可靠的存储技术,目前已经在人们的生产和生活中得到了极其广泛的应用。RAID主要利用数据条带、数据校验和镜像技术来获得较强的性能、更高的可靠性、较好的容错能力和较强的扩展性。根据不同的数据应用需求,可以运用或者组合运用这三种技术的策略和架构,所以按照不同的策略和架构,RAID可以被分为不同的等级:RAID 0,1,5,6,10。
RAID 0是最早出现的RAID模式,即Data Stripping数据分条技术。RAID 0是组建磁盘阵列中最简单的一种形式,只需要2块以上的硬盘即可,成本低,可以提高整个磁盘的性能和吞吐量。RAID 0没有提供冗余或错误修复能力,但实现成本是最低的。RAID 0最简单的实现方式就是把N块同样的硬盘用硬件的形式通过智能磁盘控制器或用操作系统中的磁盘驱动程序以软件的方式串联在一起创建一个大的卷集。在使用中电脑数据依次写入到各块硬盘中,它的最大优点就是可以整倍的提高硬盘的容量。如使用了三块80GB的硬盘组建成RAID 0模式,那么磁盘容量就会是240GB。其速度方面,和单独一块硬盘的速度完全相同。最大的缺点在于任何一块硬盘出现故障,整个系统将会受到破坏,可靠性仅为单独一块硬盘的1/N。
RAID 1称为磁盘镜像,原理是把一个磁盘的数据镜像到另一个磁盘上,也就是说数据在写入一块磁盘的同时,会在另一块闲置的磁盘上生成镜像文件,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行,当一块硬盘失效时,系统会忽略该硬盘,转而使用剩余的镜像盘读写数据,具备很好的磁盘冗余能力。虽然这样对数据来讲绝对安全,但是成本也会明显增加,磁盘利用率为50%,以四块80GB容量的硬盘来讲,可利用的磁盘空间仅为160GB。另外,出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。因此,RAID 1多用在保存关键性的重要数据的场合。
RAID 5(分布式奇偶校验的独立磁盘结构)。它的奇偶校验码存在于所有磁盘上,其中的p0代表第0带区的奇偶校验值,其它的意思也相同。RAID 5的读出效率很高,写入效率一般,块式的集体访问效率不错。因为奇偶校验码在不同的磁盘上,所以提高了可靠性。但是它对数据传输的并行性解决不好,而且控制器的设计也相当困难。对于RAID 5来说,大部分数据传输只对一块磁盘操作,可进行并行操作。在RAID 5中有“写损失”,即每一次写操作,将产生四个实际的读/写操作,其中两次读旧的数据及奇偶信息,两次写新的数据及奇偶信息。
RAID 6是带两种分布存储的奇偶校验码独立磁盘结构,RAID 6是对RAID 5的扩展,主要是用于要求数据绝对不能出错的场合。由于引入了第二种奇偶校验值,所以需要N+2个磁盘,同时对控制器的设计变得十分复杂,进一步提升了磁盘阵列的数据可靠性。需要更多的空间来存储校验值,同时在写操作中具有更高的性能损失。RAID6技术在当今分布式存储服务器中得到了广泛的应用,RAID 6可以恢复两个的错误块,但是每次数据恢复依然受限于各个盘大量数据读取时的速度限制,因此亟需对RAID6磁盘阵列的编码和解密方式进行改进。
发明内容
有鉴于此,有必要针对传统RAID6编解码方式导致数据恢复受限于数据读取量的问题,本发明提供了一种RAID6磁盘阵列的编码方法、RAID6磁盘阵列的解码方法,一种RAID6磁盘阵列的编码装置,一种RAID6磁盘阵列的解码装置、一种计算机设备及一种计算机可读存储介质。
根据本发明的第一方面,提供了一种RAID6磁盘阵列的编码方法,所述编码方法包括:
将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
在一些实施例中,所述编码方法还包括:
响应于RAID6磁盘阵列下条带总数为奇数,则根据第一规则和第三规则计算未组对条带的两个校验码,其中,所述第三规则为同一条带上所述第一磁盘组和第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
在一些实施例中,所述将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组的步骤包括:
获取RAID6磁盘阵列的磁盘总数;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘平均分成两组;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将磁盘排列顺序中的前一半和后一半分别作为一组。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述将RAID6磁盘阵列下全部条带两两组对以得到若干条带对的步骤包括:
获取RAID6磁盘阵列的条带总数以及条带排列顺序;
响应于所述条带总数为偶数,则基于所述条带排列顺序将全部条带按照连续两个条带组成一对方式组对;
响应于所述条带总数为奇数,则基于所述条带排列顺序将除首个条带或最后一个条带以外的剩余条带按照连续两个条带组成一对方式组对。
在一些实施例中,所述RAID6磁盘阵列的负载均衡满足以下方式中的任意一种:左旋对齐、左旋不对齐、右旋对齐和右旋不对齐。
根据本发明的第二方面,提供了一种RAID6磁盘阵列的解码方法,RAID6磁盘阵列采用以上所述的编码方法进行编码,所述解码方法包括:
响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在所述某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
在一些实施例中,所述解码方法还包括:
响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
根据本发明的第三方面,提供了一种RAID6磁盘阵列的编码装置,所述编码装置包括:
磁盘分组模块,所述磁盘分组模块配置用于,将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
条带组对模块,所述条带组对模块配置用于将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
计算模块,所述计算模块配置用于根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
根据本发明的第四方面,提供了一种RAID6磁盘阵列的解码装置,RAID6磁盘阵列采用以上所述的编码装置进行编码,所述解码装置包括:
判断模块,所述判断模块配置用于响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
第一读取模块,所述第一读取模块配置用于响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在所述某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
第一解码模块,所述第一解码模块配置用于基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
在一些实施例中,所述解码装置还包括:
第二读取模块,所述第二读取模块配置用于响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中,所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
第二解码模块,所述第二解码模块配置用于基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
根据本发明的第五方面,还提供了一种计算机设备,该计算机设备包括:
至少一个处理器;以及
存储器,存储器存储有可在处理器上运行的计算机程序,处理器执行程序时执行前述的RAID6磁盘阵列的编码方法或RAID6磁盘阵列的解码方法。
根据本发明的第六方面,还提供了一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时执行前述的RAID6磁盘阵列的编码方法或RAID6磁盘阵列的解码方法。
上述一种RAID6磁盘阵列的编码方法,通过将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组,然后将RAID6磁盘阵列下全部条带两两组对以得到若干条带对,最后根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,使属于同条带对的两个条带根据磁盘分组交叉编码,丰富了RAID6磁盘阵列的编解码方式,有助于减少单一磁盘错误时恢复数据所需读取的数据量,提升RAID6性能。
此外,本发明还提供了一种RAID6磁盘阵列的解码方法,一种RAID6磁盘阵列的编码装置,一种RAID6磁盘阵列的解码装置、一种计算机设备及一种计算机可读存储介质,同样能实现上述技术效果,这里不再赘述。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的实施例。
图1本发明一个实施例提供的一种RAID6磁盘阵列的编码方法流程示意图;
图2为本发明另一个实施例提供的一种RAID6磁盘阵列的解码方法流程示意图;
图3为本发明另一个实施例提供的6块磁盘的RAID6左旋不对齐情况下的组建形式示意图;
图4为本发明另一个实施例提供的6块磁盘奇数个条带的RAID6组建示意图;
图5为本发明又一个实施例提供的一种RAID6磁盘阵列的编码装置结构示意图;
图6为本发明又一个实施例提供的一种RAID6磁盘阵列的解码装置结构示意图;
图7为本发明另一个实施例中计算机设备的内部结构图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明实施例进一步详细说明。
需要说明的是,本发明实施例中所有使用“第一”和“第二”的表述均是为了区分两个相同名称非相同的实体或者非相同的参量,可见“第一”“第二”仅为了表述的方便,不应理解为对本发明实施例的限定,后续实施例对此不再一一说明。
在一个实施例中,请参照图1所示,本发明提供了一种RAID6磁盘阵列的编码方法100,具体来说包括以下步骤
步骤101,将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
步骤102,将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
步骤103,根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
上述一种RAID6磁盘阵列的编码方法,通过将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组,然后将RAID6磁盘阵列下全部条带两两组对以得到若干条带对,最后根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,使属于同条带对的两个条带根据磁盘分组交叉编码,丰富了RAID6磁盘阵列的编解码方式,有助于减少单一磁盘错误时恢复数据所需读取的数据量,提升RAID6性能。
在一些实施例中,所述编码方法还包括:
响应于RAID6磁盘阵列下条带总数为奇数,则根据第一规则和第三规则计算未组对条带的两个校验码,其中,所述第三规则为同一条带上所述第一磁盘组和第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
在一些实施例中,所述将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组的步骤包括:
获取RAID6磁盘阵列的磁盘总数;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘平均分成两组;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将磁盘排列顺序中的前一半和后一半分别作为一组。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述将RAID6磁盘阵列下全部条带两两组对以得到若干条带对的步骤包括:
获取RAID6磁盘阵列的条带总数以及条带排列顺序;
响应于所述条带总数为偶数,则基于所述条带排列顺序将全部条带按照连续两个条带组成一对方式组对;
响应于所述条带总数为奇数,则基于所述条带排列顺序将除首个条带或最后一个条带以外的剩余条带按照连续两个条带组成一对方式组对。
在一些实施例中,所述RAID6磁盘阵列的负载均衡满足以下方式中的任意一种:左旋对齐、左旋不对齐、右旋对齐和右旋不对齐。
在又一个实施例中,请参照图2所示,本发明还提供了一种RAID6磁盘阵列的解码方法200,RAID6磁盘阵列采用以上所述的编码方法进行编码,所述解码方法包括:
步骤201,响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
步骤202,响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在所述某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
步骤203基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
上述一种RAID6磁盘阵列的解码方法,针对单一磁盘错误的情形无需读取全部的数据即可恢复出错误数据,减少单一磁盘错误时恢复数据所需读取的数据量,提升RAID6性能。
在一些实施例中,所述解码方法还包括:
响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
在又一个实施例中,RAID6的设计是为了使得RAID组完成后,可以实现任意两个或一个的磁盘组中的错误,都可以被恢复,是当今通用存储产品应用最多的纠删方案。而RAID6的错误恢复需要读取剩余所有的数据进行计算,因此不同的实现方案所比较的性能主要集中在数据编解码的速度上。实际应用的场景中,RAID6虽然可以保证两个任意错误的恢复,但是按照实际场景的统计数据表示,单一错误的场景占了所有错误的99.75%,因此不管任何RAID的具体实现方案,核心的速度提升应该是针对单一错误场景的改善。为了便于理解本发明的方案,本实施例对传统的RAID6的算法原理、本发明提供的RAID6磁盘阵列的编码方法、解密方法进行分别说明。
第一部分:传统的RAID6的算法原理如下:
传统的RAID6的算法原理使用的是:
Figure 342709DEST_PATH_IMAGE001
公式(1);
其中,公式(1)中的p和q表示RAID6下组建的两个校验码,通过p和q可以实现RAID6组下的任意两个错误的恢复。公式(1)中的x和y表示p和q所在公式中的位置,位置通过组建RAID组对应的磁盘中的条带关系决定,服务器组建时,为了保证各个盘的IO压力相同,实现负载均衡,通常需要通过负载均衡算法将其均匀放在各盘上。假设此时共6块磁盘,组建RAID6,因此其中4块为用户的数据盘,2块为校验盘,为了满足负载均衡,我们选择左旋不对齐的方式举例说明,其组建情况如图3所示。相应的,负载均衡的常见方法还有左旋对齐,右旋不对齐和右旋对齐方式,在实际的性能表现上四者类似,在实际的应用中随机试用。因此这里我们采用左旋不对齐进行举例说明。因为RAID6的算法关系基于范德蒙算法,具体实现使用时可完全基于位置进行配置,这样实现的编解码方式对于实际产品的硬件架构和固件配置更为友好。以图3情况进行举例,则在位置关系配置下,所得到RAID6的关系为:
Figure 525428DEST_PATH_IMAGE002
公式(2);
基于公式(2)进行校验码p1-p6的计算,即可完成图3例子中的RAID6的编码组建。对于一个或两个错误的情况下,RAID6的解码(降级读)需要取出其他剩余所有数据,以公式(2)中的2进行举例说明:
如果d5错误举例说明单一错误时:
Figure 836324DEST_PATH_IMAGE003
公式(3);
如果d5d8错误举例说明两个错误时:
Figure 497113DEST_PATH_IMAGE004
公式(4);
上公式(4)可知,传统编解码方式下任意(一个或两个)错误下,RAID6的解码需要将剩余所有数据块读取,进行译码。而在存储系统中,数据的读取受限于传输通道及协议,往往成为该工作的速度主要限制原因,因此设计先进的RAID6方案的核心就是考虑如何减少编解码的数据读取需求量,从而提高速度。
第二部分:本实施例提供的RAID6磁盘阵列的编码方法具体实施方式如下:
本发明针对RAID6传统的编解码方法进行改进,其编码的方式改进为如图4所示:
(1)条带量确定
本发明建议将条带数量划分为偶数,这样可以达到优化的效果最大,如果基于实际需求,条带量只能划分为奇数,本发明的优势会受到一定的影响,但是依然可以实施,具体以奇数举例说明,举例划分见图4。
(2)针对磁盘量划分为AB两组,划分方式为按照其磁盘量对半分,如果磁盘量为奇 数n,则划分为
Figure 577064DEST_PATH_IMAGE005
数量的两组。两组的划分方式可以顺序进行划分,每2个条带进行相 同的划分。如果条带总数为奇数,则对于剩余的最后一个条带,不做划分,直接使用传统的 RAID6方案进行编解码,具体如图4中的“剩余奇数条带”示例。则对于以上准备工作完成后, RAID6的编码组建关系如图4所示:当前用户磁盘量n=6,则基于对半分原则,分为AB组分别 数量为3,按照顺序划分的原则,条带1-条带4的AB如图4所示。以条带1和条带2进行举例说 明本发明的RAID6组建关系表示为:
Figure 665106DEST_PATH_IMAGE006
公式(5);
从公式(5)可知,RAID6的编码参数关系与原本RAID6赋值方式相同(范德蒙),编码的第一行公式相同,第二行公式的满足条件在相同参数关系的前提下,调整为AB组交错实现。即是P1P2的编码关系中,第一行关系使用原本的编码关系实现,第二行的关系使用跨组方式实现。对于奇数条带情况下,每两个条带组成一个上述公式(5)的关系,剩余的一个条带,如上图4中的“剩余奇数条带”,使用原本的RAID6编码实现即可,条带3-4具有类似条带1和2的编码方式。
第三部分:本实施例提供的RAID6磁盘阵列的解密方法具体实施方式如下:
(a)解码对于单一错误时,首先判断错误发生的磁盘是在A组还是B组,读取错误所在组内存活(正确)的所有数据块,然后读取另外一组内的奇数(或偶数)的条带的数据块,即可完成解码。以图4中磁盘1发生错误举例说明,因为磁盘1发生错误,其在组B内,所以首先读取磁盘2,3的所有数据。然后选择组A的奇数或偶数条带数据进行读取,当我们读取的是奇数条带,亦即是磁盘4、5、6的条带1、3的情况下,结合公式(5)可知解码方式如下所示:
Figure 446986DEST_PATH_IMAGE007
公式(6);
同理,当我们读取的是偶数条带,则上述的运算解法为:
Figure 177044DEST_PATH_IMAGE008
公式(7);
可知当单一错误时,本发明解码除了读取错误所在组内的所有数据之外,另外一 组的数据只需要读取奇数或偶数条带内的数据块,解码方法基于公式(5)所表述的关系,不 同的奇数或偶数的读取,只需要如公式(6)和(7)调整参数关系(参数关系符合图4中实线或 虚线对应的关系)即可。解码时,如果如同RAID6正常的解法每次解码一个条带内的待解码 值,则需要读取数据量等同于RAID6的解码需求数据量,而如果解码最小单元为2个条带,则 可减少未发生错误磁盘组一半条带的数据读取需求。这样实现下,假设条带划分下满足偶 数关系的条带量是m条,磁盘量满足偶数为n,则使用本发明对于任意一个错误的恢复(降级 读)场景,都可以减少
Figure 111502DEST_PATH_IMAGE009
个数据块的读取。
(b)发生任意两个错误时,解码方法如同传统RAID6解密方式一样,需要读取剩余所有的数据,然后基于RAID6类似的方式进行解码。举例说明,假如磁盘1和2发生错误时,则其解码方式为:两个错误的场景,因为本发明方案在编码将所有的数据按照分组的方式分为了两组,因此两个错误时,分为两种场景,两个错误在同一组或两个错误分别在两组两个场景。下面分别举例说明。
b1、当两个错误发生在同一组时,以磁盘1和磁盘3发生错误为例进行说明。此时对于d1d3d5d7四个数据块发生错误需要恢复为例,其数据关系为:
Figure 370445DEST_PATH_IMAGE010
公式(8);
由公式(8)可知在同一组的四个数据块发生错误时,解码关系符合RAID6解码关系,但单一条带解码时的数据读取量会大出一个条带的组数据量。但如公式(8)所表述,我们设置每两个条带作为解码的最小单位进行解码时,此时数据读取量和传统RAID6解码完全相同。
b2、当两个错误发生在不同组时,以磁盘1和4发生错误为例进行说明。此时对于d1d4d5p3四个数据块发生错误需要恢复为例,其数据关系为:
Figure 390354DEST_PATH_IMAGE011
公式(9);
为了方便说明,公式(9)中的四个关系公式进行了编号“1,2,3,4”。可知此时如果按照传统的RAID6条带的运算方式则无法解码,因此当发生在不同组时,确定每次解码两个条带为其最小单位,则会得到如上公式(9)的关系。此时对1和2进行基于d2消元处理,对3和4进行基于d5进行消元处理(这步的消元处理只有唯一解,或是23消元以及14消元),则会得到:
Figure 392945DEST_PATH_IMAGE012
公式(10);
满足多项式有解且有唯一的要求,则可基于公式(10)按照RAID6的方式解出d4,p3,同理相应的得到d1,d5.从而完成所有数据的解码运算。由此可见此种情形所读取的数据量同样与传统RAID6方式相同。
综上所述,本发明所提出的方案解码时改变解码的最小单位为偶数条带,则可实 现在单一错误时减少
Figure 181910DEST_PATH_IMAGE013
(满足偶数关系的条带量是m条,磁盘量满足偶数为n)的数据块读 取量需求,对于两个错误时,解码符合与RAID6有相同的数据读取量。而对于符合偶数条带 之外的条带(奇数情况下剩余的一个条带),使用传统RAID6进行运算即可,在本发明的实现 架构下,虽然每次最小单元两个条带进行运算,但在这种情况下,剩余的条带通过补0即可 完成运算。而在实际的场景下条带划分由设计决定,因此这种情况下通常不会出现。
本发明的RAID6磁盘阵列的编码方法和RAID6磁盘阵列的解密方法,针对发生单一错误时,恢复的数据读取量可以减少一半左右,从而达到速度提升一倍左右的优势,而编码或双错误的解码时通过流水线复用的方式,可以实现其实际速度达到标准RAID6的特点,从而以较小的损耗实现单错误的解码速度改进。
在又一个实施例中,请参照图5所示,本发明还提供了一种RAID6磁盘阵列的编码装置300,所述编码装置300包括:
磁盘分组模块301,所述磁盘分组模块301配置用于将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
条带组对模块302,所述条带组对模块302配置用于将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
计算模块303,所述计算模块303配置用于根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
上述一种RAID6磁盘阵列的编码装置300,通过将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组,然后将RAID6磁盘阵列下全部条带两两组对以得到若干条带对,最后根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,使属于同条带对的两个条带根据磁盘分组交叉编码,丰富了RAID6磁盘阵列的编解码方式,有助于减少单一磁盘错误时恢复数据所需读取的数据量,提升RAID6性能。
在一些实施例中,所述编码装置300还包括:
响应于RAID6磁盘阵列下条带总数为奇数,则根据第一规则和第三规则计算未组对条带的两个校验码,其中,所述第三规则为同一条带上所述第一磁盘组和第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
在一些实施例中,所述磁盘分组模块301进一步配置用于:
获取RAID6磁盘阵列的磁盘总数;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘平均分成两组;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘。
在一些实施例中,所述磁盘分组模块301进一步配置用于:
获取RAID6磁盘阵列的磁盘排列顺序;
将磁盘排列顺序中的前一半和后一半分别作为一组。
所述磁盘分组模块301进一步配置用于:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述磁盘分组模块301进一步配置用于:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
在一些实施例中,所述条带组对模块302进一步配置用于:
获取RAID6磁盘阵列的条带总数以及条带排列顺序;
响应于所述条带总数为偶数,则基于所述条带排列顺序将全部条带按照连续两个条带组成一对方式组对;
响应于所述条带总数为奇数,则基于所述条带排列顺序将除首个条带或最后一个条带以外的剩余条带按照连续两个条带组成一对方式组对。
在一些实施例中,所述RAID6磁盘阵列的负载均衡满足以下方式中的任意一种:左旋对齐、左旋不对齐、右旋对齐和右旋不对齐。
需要说明的是,关于RAID6磁盘阵列的编码装置的具体限定可以参见上文中对RAID6磁盘阵列的编码方法的限定,在此不再赘述。上述RAID6磁盘阵列的编码装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在又一个实施例中,请参照图6所示,本发明还提供了一种RAID6磁盘阵列的解码装置400,RAID6磁盘阵列采用以上所述的编码装置进行编码,所述解码装置400包括:
判断模块401,所述判断模块401配置用于响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
第一读取模块402,所述第一读取模402块配置用于响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在所述某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
第一解码模块403,所述第一解码模块403配置用于基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
上述一种RAID6磁盘阵列的解码装置400,针对单一磁盘错误的情形无需读取全部的数据即可恢复出错误数据,减少单一磁盘错误时恢复数据所需读取的数据量,提升RAID6性能。
在一些实例中,所述解码装置400还包括:
第二读取模块,所述第二读取模块配置用于响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中,所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
第二解码模块,所述第二解码模块配置用于基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
根据本发明的另一方面,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图请参照图7所示。该计算机设备包括通过系统总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时实现以上所述的RAID6磁盘阵列的编码方法或所述的RAID6磁盘阵列的解码方法。
根据本发明的又一方面,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以上所述的RAID6磁盘阵列的编码方法或所述的RAID6磁盘阵列的解码方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink) DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

Claims (15)

1.一种RAID6磁盘阵列的编码方法,其特征在于,所述编码方法包括:
将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
2.根据权利要求1所述的RAID6磁盘阵列的编码方法,所述编码方法还包括:
响应于RAID6磁盘阵列下条带总数为奇数,则根据第一规则和第三规则计算未组对条带的两个校验码,其中,所述第三规则为同一条带上所述第一磁盘组和第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
3.根据权利要求1所述的RAID6磁盘阵列的编码方法,其特征在于,所述将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组的步骤包括:
获取RAID6磁盘阵列的磁盘总数;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘平均分成两组;
响应于所述磁盘总数为偶数,则将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘。
4.根据权利要求3所述的RAID6磁盘阵列的编码方法,其特征在于,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将磁盘排列顺序中的前一半和后一半分别作为一组。
5.根据权利要求3所述的RAID6磁盘阵列的编码方法,其特征在于,所述将构成RAID6磁盘阵列的所有磁盘平均分成两组的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
6.根据权利要求3所述的RAID6磁盘阵列的编码方法,其特征在于,所述将构成RAID6磁盘阵列的所有磁盘划分成一组比另一组多一个磁盘的步骤包括:
获取RAID6磁盘阵列的磁盘排列顺序;
将所述磁盘排列顺序中所有奇数位对应的磁盘和所有偶数位对应的磁盘分别作为一组。
7.根据权利要求1所述的RAID6磁盘阵列的编码方法,其特征在于,所述将RAID6磁盘阵列下全部条带两两组对以得到若干条带对的步骤包括:
获取RAID6磁盘阵列的条带总数以及条带排列顺序;
响应于所述条带总数为偶数,则基于所述条带排列顺序将全部条带按照连续两个条带组成一对方式组对;
响应于所述条带总数为奇数,则基于所述条带排列顺序将除首个条带或最后一个条带以外的剩余条带按照连续两个条带组成一对方式组对。
8.根据权利要求1所述的RAID6磁盘阵列的编码方法,其特征在于,所述RAID6磁盘阵列的负载均衡满足以下方式中的任意一种:左旋对齐、左旋不对齐、右旋对齐和右旋不对齐。
9.一种RAID6磁盘阵列的解码方法,其特征在于,RAID6磁盘阵列采用权利要求1-7任意一项所述的编码方法进行编码,所述解码方法包括:
响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
10.根据权利要求9所述的RAID6磁盘阵列的解码方法,其特征在于,所述解码方法还包括:
响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
11.一种RAID6磁盘阵列的编码装置,其特征在于,所述编码装置包括:
磁盘分组模块,所述磁盘分组模块配置用于将RAID6磁盘阵列下所有磁盘划分成两组以得到第一磁盘组和第二磁盘组;
条带组对模块,所述条带组对模块配置用于将RAID6磁盘阵列下全部条带两两组对以得到若干条带对;
计算模块,所述计算模块配置用于根据第一规则和第二规则计算所述若干条带对中每个条带的两个校验码,其中,所述第一规则为每一条带上所述第一磁盘组和所述第二磁盘组的各个数据进行异或运算结果等于零,所述第二规则为同一条带对中一个条带上所述第一磁盘组的各个数据乘以对应磁盘号、以及另一个条带上所述第二磁盘组的各个数据乘以对应磁盘号进行异或运算结果等于零。
12.一种RAID6磁盘阵列的解码装置,其特征在于,RAID6磁盘阵列采用权利要求11所述的编码装置进行编码,所述解码装置包括:
判断模块,所述判断模块配置用于响应于RAID6磁盘阵列发生单一磁盘错误,则判断单一磁盘错误所属的磁盘组;
第一读取模块,所述第一读取模块配置用于响应于单一磁盘错误对应的条带属于所述若干条带对,则以最小解码单位为两个条带的方式读取第一解码数据,其中,所述第一解码数据包括:单一错误所属磁盘组中其他磁盘在某一条带对的两个条带上的所有数据,以及未发生错误的磁盘组的各个磁盘在所述某一条带对的其中一个条带上的所有数据;
第一解码模块,所述第一解码模块配置用于基于第一规则、第二规则以及所述第一解码数据进行解码以得到恢复数据。
13.根据权利要求12所述的RAID6磁盘阵列的解码装置,其特征在于,所述解码装置还包括:
第二读取模块,所述第二读取模块配置用于响应于单一磁盘错误对应的条带不属于任何条带对,则以最小解码单位为一个条带的方式读取第二解码数据,其中,所述第二解码数据包括除发生单一磁盘错误以外的其他磁盘在该条带上的所有数据;
第二解码模块,所述第二解码模块配置用于基于第一规则、第三规则以及所述第二解码数据进行解码以得到恢复数据。
14.一种计算机设备,其特征在于,包括:
至少一个处理器;以及
存储器,所述存储器存储有可在所述处理器中运行的计算机程序,所述处理器执行所述程序时执行权利要求1-8任意一项所述的编码方法,或者执行9-10任意一项所述的解码方法。
15.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时执行权利要求1-8任意一项所述的编码方法,或者执行9-10任意一项所述的解码方法。
CN202210887332.0A 2022-07-26 2022-07-26 Raid6磁盘阵列的编码方法、解码方法、装置及介质 Active CN115080303B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210887332.0A CN115080303B (zh) 2022-07-26 2022-07-26 Raid6磁盘阵列的编码方法、解码方法、装置及介质
PCT/CN2023/077973 WO2024021594A1 (zh) 2022-07-26 2023-02-23 Raid6磁盘阵列的编码方法、解码方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210887332.0A CN115080303B (zh) 2022-07-26 2022-07-26 Raid6磁盘阵列的编码方法、解码方法、装置及介质

Publications (2)

Publication Number Publication Date
CN115080303A true CN115080303A (zh) 2022-09-20
CN115080303B CN115080303B (zh) 2023-01-06

Family

ID=83242236

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210887332.0A Active CN115080303B (zh) 2022-07-26 2022-07-26 Raid6磁盘阵列的编码方法、解码方法、装置及介质

Country Status (2)

Country Link
CN (1) CN115080303B (zh)
WO (1) WO2024021594A1 (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116312726A (zh) * 2023-05-16 2023-06-23 苏州浪潮智能科技有限公司 一种数据存储方法、装置、电子设备和存储介质
CN116501553A (zh) * 2023-06-25 2023-07-28 苏州浪潮智能科技有限公司 数据恢复方法、装置、系统、电子设备及存储介质
CN116501537A (zh) * 2023-06-26 2023-07-28 苏州浪潮智能科技有限公司 磁盘阵列切换方法、系统、电子设备及存储介质
WO2024021594A1 (zh) * 2022-07-26 2024-02-01 苏州元脑智能科技有限公司 Raid6磁盘阵列的编码方法、解码方法、装置及介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050166083A1 (en) * 2003-06-26 2005-07-28 Frey Alexander H.Jr. RAID 6 disk array architectures
CN102023819A (zh) * 2010-12-01 2011-04-20 北京同有飞骥科技股份有限公司 一种双磁盘容错水平型分组并行访问磁盘阵列的构建方法
CN104881252A (zh) * 2015-05-21 2015-09-02 东莞天意电子有限公司 一种基于e码的磁盘阵列布局结构
CN113821373A (zh) * 2021-11-19 2021-12-21 苏州浪潮智能科技有限公司 提高磁盘地址转换速度的方法、系统、设备和存储介质
CN114153651A (zh) * 2022-02-09 2022-03-08 苏州浪潮智能科技有限公司 一种数据编码方法、装置、设备及介质

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5499253A (en) * 1994-01-05 1996-03-12 Digital Equipment Corporation System and method for calculating RAID 6 check codes
US6138125A (en) * 1998-03-31 2000-10-24 Lsi Logic Corporation Block coding method and system for failure recovery in disk arrays
CN114756402A (zh) * 2022-04-15 2022-07-15 山东云海国创云计算装备产业创新中心有限公司 Raid组更新数据时保障数据安全的方法、系统、设备及介质
CN115080303B (zh) * 2022-07-26 2023-01-06 苏州浪潮智能科技有限公司 Raid6磁盘阵列的编码方法、解码方法、装置及介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20050166083A1 (en) * 2003-06-26 2005-07-28 Frey Alexander H.Jr. RAID 6 disk array architectures
CN102023819A (zh) * 2010-12-01 2011-04-20 北京同有飞骥科技股份有限公司 一种双磁盘容错水平型分组并行访问磁盘阵列的构建方法
CN104881252A (zh) * 2015-05-21 2015-09-02 东莞天意电子有限公司 一种基于e码的磁盘阵列布局结构
CN113821373A (zh) * 2021-11-19 2021-12-21 苏州浪潮智能科技有限公司 提高磁盘地址转换速度的方法、系统、设备和存储介质
CN114153651A (zh) * 2022-02-09 2022-03-08 苏州浪潮智能科技有限公司 一种数据编码方法、装置、设备及介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024021594A1 (zh) * 2022-07-26 2024-02-01 苏州元脑智能科技有限公司 Raid6磁盘阵列的编码方法、解码方法、装置及介质
CN116312726A (zh) * 2023-05-16 2023-06-23 苏州浪潮智能科技有限公司 一种数据存储方法、装置、电子设备和存储介质
CN116312726B (zh) * 2023-05-16 2023-08-15 苏州浪潮智能科技有限公司 一种数据存储方法、装置、电子设备和存储介质
CN116501553A (zh) * 2023-06-25 2023-07-28 苏州浪潮智能科技有限公司 数据恢复方法、装置、系统、电子设备及存储介质
CN116501553B (zh) * 2023-06-25 2023-09-19 苏州浪潮智能科技有限公司 数据恢复方法、装置、系统、电子设备及存储介质
CN116501537A (zh) * 2023-06-26 2023-07-28 苏州浪潮智能科技有限公司 磁盘阵列切换方法、系统、电子设备及存储介质
CN116501537B (zh) * 2023-06-26 2023-09-19 苏州浪潮智能科技有限公司 磁盘阵列切换方法、系统、电子设备及存储介质

Also Published As

Publication number Publication date
CN115080303B (zh) 2023-01-06
WO2024021594A1 (zh) 2024-02-01

Similar Documents

Publication Publication Date Title
CN115080303B (zh) Raid6磁盘阵列的编码方法、解码方法、装置及介质
US9063910B1 (en) Data recovery after triple disk failure
US9811416B2 (en) Memory access method and apparatus for message-type memory module
US8489916B2 (en) Multi-disk fault-tolerant system, method for generating a check block, and method for recovering a data block
CN101719086B (zh) 磁盘阵列容错处理方法和装置及容错系统
CN103577274A (zh) 管理存储器阵列的方法和装置
CN116501553B (zh) 数据恢复方法、装置、系统、电子设备及存储介质
WO2023165536A1 (zh) 一种数据存储方法、系统、设备以及介质
WO2023151290A1 (zh) 一种数据编码方法、装置、设备及介质
CN114816278B (zh) 一种存储服务器的数据迁移方法、系统、设备及存储介质
US20140164695A1 (en) Method and system for storing and rebuilding data
CN114610244A (zh) 一种独立冗余磁盘阵列降级方法、系统及设备
Qiu et al. Ec-fusion: An efficient hybrid erasure coding framework to improve both application and recovery performance in cloud storage systems
CN114115729B (zh) 一种raid下的高效数据迁移方法
CN111459710B (zh) 感知热度与风险的纠删码内存恢复方法、设备及内存系统
CN114610525A (zh) 一种用于磁盘阵列的数据更新方法、系统及存储介质
CN116450048A (zh) Raid6磁盘阵列降级为raid5磁盘阵列的方法
CN115167787B (zh) 一种数据转存方法、系统、设备及计算机可读存储介质
CN114756175A (zh) 一种用于磁盘阵列的解码方法、系统、设备及介质
CN104932836B (zh) 一种提高单写性能的三盘容错编码和解码方法
CN115113816A (zh) 一种纠删码数据处理系统、方法、计算机设备及介质
US9400715B1 (en) System and method for interconnecting storage elements
CN115269258A (zh) 一种数据恢复的方法和系统
CN114996047A (zh) 一种数据存储方法、系统、设备以及介质
CN114153393B (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