CN109144430A - Raid5快速同步方法 - Google Patents
Raid5快速同步方法 Download PDFInfo
- Publication number
- CN109144430A CN109144430A CN201811148614.9A CN201811148614A CN109144430A CN 109144430 A CN109144430 A CN 109144430A CN 201811148614 A CN201811148614 A CN 201811148614A CN 109144430 A CN109144430 A CN 109144430A
- Authority
- CN
- China
- Prior art keywords
- raid5
- data
- xor
- block
- disk
- 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
Links
Classifications
-
- 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/0614—Improving the reliability of storage 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/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/0671—In-line storage system
- G06F3/0683—Plurality of storage devices
- G06F3/0689—Disk arrays, e.g. RAID, JBOD
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明属于计算机数据存储技术领域,具体涉及一种RAID5快速同步方法。本发明的方法包括以下步骤:将组成阵列的硬盘的所有数据块置为零。本发明的技术方案通过将所有数据块置为零,可省去传统RAID5同步方式中硬盘数据读取以及数据校验和计算两个步骤,极大提高了RAID5同步的效率,缩短RAID5同步所需的时间。
Description
技术领域
本发明属于计算机数据存储技术领域,具体涉及一种RAID5快速同步方法。
背景技术
RAID(Redundant Array of Independent Disk独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,是由多个独立的高性能磁盘驱动器组成的磁盘子系统,从而提供比单个磁盘更高的存储性能和数据冗余的技术,RAID作为高性能、高可靠的存储技术,已经得到了非常广泛的应用。RAID主要利用数据条带、镜像和数据校验技术来获取高性能、可靠性、容错能力和扩展性,根据运用或组合运用这三种技术的策略和架构,可以把RAID分为不同的等级,以满足不同数据应用的需求,在实际应用领域中使用最多的RAID等级是RAID0、RAID1、RAID3、RAID5、RAID6和RAID10。
在各种不同的RAID等级中,RAID 5是一种存储性能、数据安全和存储成本兼顾的存储解决方案。RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID 5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID 5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
基于RAID5存储数据的原理,当多块磁盘构建RAID5后,需要对整个存储区域进行数据初始化同步,包括以下步骤:一、读取各硬盘数据块数据;二、计算各数据块校验和;三、写入校验和到硬盘。在RAID5数据同步时,计算每个块的校验和公式为:D1 xor D2 xorD3....xor Dn-1=Cp,其中,n表示由构建raid的磁盘数,n>=3,Dn:表示数据块,Cp:表示校验和,xor表示异或操作。以n块硬盘组成RAID5为例,数据同步过程步骤为:依次读出每个条带的数据块D1,D2,D3,...,Dn-1;对D1,D2,D3,...,Dn-1,进行xor计算出Cp;将Cp写入对应的校验块区域。
在RAID5的整个同步过程中,需对所有磁盘的数据进行读取,计算校验和,写入校验和的操作,因此存在读取硬盘频繁,计算量大,时间较慢的问题。不仅如此,随着磁盘技术的不断发展,磁盘的容量也不断扩大,在大容量硬盘组RAID5进行同步的时候,上述问题越发明显和严重。
发明内容
本发明的目的之一在于克服以上缺点,提供一种提高RAID5同步的效率、缩短RAID5同步所需的时间的方法。
为了解决上述技术问题,本发明提供了一种RAID5快速同步方法,包括以下步骤:
将组成阵列的硬盘的所有数据块置为零。
进一步地,所述“将组成阵列的硬盘的所有数据块置为零”,是采用bzero或memset命令进行置零。
进一步地,所述“数据块”,包括校验块和非校验块,并且校验块和非校验块满足公式:D1 xor D2 xor D3....xor Dn-1=Cp,其中,n表示由构建raid的磁盘数,n>=3,Dn:表示第n个非校验块,Cp:表示校验块,xor表示异或操作。
本发明技术方案的有益效果有:
与传统的RAID5同步方法相比,本发明的同步方法,无需对各硬盘数据进行读取,减少了磁盘的频繁读取;无需进行数据校验和的计算,减少了对计算资源的消耗;同时,通过简化以上两个步骤,大大缩短了RAID5的同步所需时间。另外,采用C语言中的bzero或memset命令进行快速置零,可进一步缩短RAID5同步的所需时间。
附图说明
图1是RAID5存储原理图。
图2是本发明的一种RAID5快速同步方法步骤流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
在各种不同的RAID等级中,RAID 5是一种存储性能、数据安全和存储成本兼顾的存储解决方案。RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID 5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。
以三个硬盘组成的RAID 5为例,其数据存储方式如图1所示:图中,校验1为数据1和数据2的奇偶校验信息,校验2为数据3和数据4的奇偶校验信息,校验3为数据5和数据6的奇偶校验信息,以此类推。当RAID 5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
基于RAID5存储数据的原理,当多块磁盘构建RAID5后,需要对整个存储区域进行数据初始化同步,以n块硬盘组成RAID5为例,现有技术的初始化同步包括以下步骤:
一、读取各硬盘数据块数据;
依次读出每个条带的数据块D1,D2,D3,...,Dn-1。
二、计算各数据块校验和;
根据D1,D2,D3,...,Dn-1,计算出校验和,计算公式为:D1 xor D2 xor D3....xorDn-1=Cp,其中,n表示由构建raid的磁盘数,n>=3,Dn:表示第n个数据块,Cp:表示校验和,xor表示异或操作,两个数据块的异或操作就是对数据块的每个二进制位进行异或计算,二进制的异或计算规则为:0 xor 0=0,1 xor 0=1,0 xor 1=1,1 xor 1=0。
三、写入校验和到硬盘。
将步骤二中计算出的校验和Cp写入RIAD5对应的校验块区域,RAID5的内部存储机制会保证每次将校验和Cp以及n-1个数据块分别存储在不同的磁盘上。
如图2,是本发明的一种RAID5快速同步方法步骤流程图,包含以下步骤:将组成阵列的硬盘的所有数据块置为零。
本发明技术方案中的将组成阵列的硬盘的所有数据块置为零,指的是将所有组成RAID5阵列硬盘上的数据的每个二进制位都置为0,包括用户数据块(非校验块)以及校验块内容。首先,在RAID5构建并进行数据同步的过程中,所有磁盘上的数据都需要复位,每块磁盘上已有的数据都会被清除,因此可以对磁盘进行写入操作。其次,由于所有的磁盘二进制位都写为0,对于由n个磁盘组成的阵列而言,其中的数据块D1,D2,。。。至Dn-1均为0,根据校验和计算公式:D1 xor D2 xor D3....xor Dn-1=Cp以及异或计算的规则可以计算出校验和Cp也为0,因此就可以省去校验和的计算步骤,而直接将校验块也置为0。
本发明的技术方案采用将磁盘数据块以及校验码都置为零的方法,省略了读取数据块信息以及计算校验和的步骤,同时又仍然能满足校验和的计算公式,对后续的RAID5数据使用及恢复没有产生影响,更重要的是,避免了磁盘的频繁读取以及大量的校验和计算,大大缩短了RAID5初始化同步所需的时间,根据测试结果,在同样硬件平台的测试条件下(包括的相同的内存,CPU,硬盘大小,硬盘数量),采用本发明技术方案中直接清零方式进行RAID5初始化同步所需的时间,只有传统按条带计算校验和进行RAID5初始化同步方法所需时间的三分之一。
在一优选的实施例中,可以通过C语言中命令bzero对硬盘进行置零操作,因为bzero是常用的系统性能关键操作,其进行了汇编级别的优化,执行效率高,同时因为是数据区全部清零,所以不需要考虑阵列的条带大小,偏移地址,一个硬盘只需要系统调用一次bzero就可以实现数据区全清零,所以效率很高。另外,采用C语言中的memset命令可以实现bzero命令相同的效果,还可以通过自定义编程实现数据清零操作。
需要说明的是,本发明的技术方案只适用于RAID5在刚创建后的同步算法的优化,并不适用于RAID5初始化完成之后的数据恢复或增加新的磁盘进行同步的场景,因为这些场景中需要保留原来的数据,不能对原有数据进行写破坏。
上述具体实施方式只是对本发明的技术方案进行详细解释,本发明并不只仅仅局限于上述实施例,凡是依据本发明原理的任何改进或替换,均应在本发明的保护范围之内。
Claims (3)
1.一种RAID5快速同步方法,其特征在于,包括以下步骤:
将组成阵列的硬盘的所有数据块置为零。
2.如权利要求1所述的一种RAID5快速同步方法,其特征在于,所述“将组成阵列的硬盘的所有数据块置为零”,是采用bzero或memset命令进行置零。
3.如权利要求1所述的一种RAID5快速同步方法,其特征在于,所述“数据块”,包括校验块和非校验块,并且校验块和非校验块满足公式:D1 xor D2 xor D3....xor Dn-1=Cp,其中,n表示由构建raid的磁盘数,n>=3,Dn:表示第n个非校验块,Cp:表示校验块,xor表示异或操作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811148614.9A CN109144430A (zh) | 2018-09-29 | 2018-09-29 | Raid5快速同步方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811148614.9A CN109144430A (zh) | 2018-09-29 | 2018-09-29 | Raid5快速同步方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109144430A true CN109144430A (zh) | 2019-01-04 |
Family
ID=64813629
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811148614.9A Pending CN109144430A (zh) | 2018-09-29 | 2018-09-29 | Raid5快速同步方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109144430A (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382874A (zh) * | 2008-10-30 | 2009-03-11 | 成都市华为赛门铁克科技有限公司 | 一种raid5磁盘阵列中写入数据的方法和装置 |
CN101482802A (zh) * | 2009-02-18 | 2009-07-15 | 杭州华三通信技术有限公司 | 独立磁盘冗余阵列5扩展方法及装置 |
CN102567214A (zh) * | 2011-12-01 | 2012-07-11 | 浪潮电子信息产业股份有限公司 | 一种用于raid5快速初始化位图页面管理的方法 |
CN102609223A (zh) * | 2012-02-13 | 2012-07-25 | 浪潮(北京)电子信息产业有限公司 | 一种独立冗余磁盘阵列系统及其初始化方法 |
-
2018
- 2018-09-29 CN CN201811148614.9A patent/CN109144430A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101382874A (zh) * | 2008-10-30 | 2009-03-11 | 成都市华为赛门铁克科技有限公司 | 一种raid5磁盘阵列中写入数据的方法和装置 |
CN101482802A (zh) * | 2009-02-18 | 2009-07-15 | 杭州华三通信技术有限公司 | 独立磁盘冗余阵列5扩展方法及装置 |
CN102567214A (zh) * | 2011-12-01 | 2012-07-11 | 浪潮电子信息产业股份有限公司 | 一种用于raid5快速初始化位图页面管理的方法 |
CN102609223A (zh) * | 2012-02-13 | 2012-07-25 | 浪潮(北京)电子信息产业有限公司 | 一种独立冗余磁盘阵列系统及其初始化方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI514249B (zh) | 遠端非同步資料卷複製的方法及執行該方法的儲存系統 | |
US7743276B2 (en) | Sufficient free space for redundancy recovery within a distributed data-storage system | |
JP5923964B2 (ja) | ディスクアレイ装置、制御装置、およびプログラム | |
US8234446B2 (en) | Disk array apparatus, data distribution and management method, and data distribution and management program | |
US7516354B2 (en) | Storing parity information for data recovery | |
US7831768B2 (en) | Method and apparatus for writing data to a disk array | |
US8984241B2 (en) | Heterogeneous redundant storage array | |
US9104342B2 (en) | Two stage checksummed raid storage model | |
US20020091897A1 (en) | Method and apparatus for supporting parity protected raid in a clustered environment | |
TW200530812A (en) | Method, system, and program for managing data organization | |
Thomasian et al. | Higher reliability redundant disk arrays: Organization, operation, and coding | |
CN101556802B (zh) | 一种raid阵列转换的方法及装置 | |
CN102520890B (zh) | 基于gpu的rs-draid系统及存储设备数据控制方法 | |
CN101770413B (zh) | 冗余磁盘阵列重建的方法及设备 | |
CN102184079B (zh) | 一种raid5级别磁盘阵列的写性能优化方法 | |
US6343343B1 (en) | Disk arrays using non-standard sector sizes | |
CN111090394A (zh) | 一种基于卷级别raid的磁阵管理方法及装置 | |
CN112749039A (zh) | 用于数据写入和数据恢复的方法、设备和程序产品 | |
CN104461373B (zh) | 一种raid数据处理方法及装置 | |
CN106227463B (zh) | Raid、数据读写及其重建方法 | |
CN107728943B (zh) | 一种延迟产生校验光盘的方法及其对应的数据恢复方法 | |
CN106933707B (zh) | 基于raid技术的数据存储设备数据恢复方法及系统 | |
CN116204137B (zh) | 基于dpu的分布式存储系统、控制方法、装置及设备 | |
US7313724B1 (en) | Method and apparatus for synchronizing redundant data with a volume | |
CN112119380B (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 | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20190104 |
|
RJ01 | Rejection of invention patent application after publication |