CN101122882A - 消除廉价磁盘冗余阵列设备的同步过程的方法 - Google Patents
消除廉价磁盘冗余阵列设备的同步过程的方法 Download PDFInfo
- Publication number
- CN101122882A CN101122882A CNA200610109725XA CN200610109725A CN101122882A CN 101122882 A CN101122882 A CN 101122882A CN A200610109725X A CNA200610109725X A CN A200610109725XA CN 200610109725 A CN200610109725 A CN 200610109725A CN 101122882 A CN101122882 A CN 101122882A
- Authority
- CN
- China
- Prior art keywords
- raid
- bit map
- equipment
- raid equipment
- block
- 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
Images
Landscapes
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本发明公开一种消除廉价磁盘冗余阵列设备的同步过程的方法,首先,于廉价磁盘冗余阵列设备初始化前创建与廉价磁盘冗余阵列设备的多个数据区块相对应的位映像;当对廉价磁盘冗余阵列设备进行读、写入操作时,依照位映像中与读、写入操作请求的数据区块相对应的位的值执行对应操作。本方法消除了廉价磁盘冗余阵列设备创建时的同步过程,因而廉价磁盘冗余阵列设备从创建开始即具有正常的效能,同时消除了同步过程所需的大量读、写入操作,进一步提高了廉价磁盘冗余阵列设备的效能,保护了廉价磁盘冗余阵列设备中的硬盘。而且,廉价磁盘冗余阵列设备的生命周期更加清晰,消除了廉价磁盘冗余阵列设备同步过程给使用者造成的疑惑。
Description
技术领域
本发明涉及一种磁盘管理方法,尤其涉及一种消除RAID设备的同步过程的方法。
背景技术
廉价磁盘冗余阵列(Redundant Arrays of Inexpensive Disks,简称RAID)设备通过RAID控制器(可为硬件或软件)将N台硬盘结合成虚拟单台大容量硬盘,以提供更大的储存容量、更快的存取速度或数据冗余功能。依照其数据组织方式的不同,RAID设备可以分为Linear(线性模式)、磁盘阵列0(RAID-0)、RAID-1、RAID-5、RAID-6等。其中RAID-1、RAID-5和RAID-6以及由它们扩展而来的RAID-10、RAID-50等,均提供数据冗余功能。
数据冗余功能是指:RAID设备通过储存冗余数据,当此RAID设备中的一个或多个硬盘损坏时,通过一定的方法仍然能够从此RAID设备上得到完整的数据。RAID设备中储存冗余数据有两种方式:镜像方式和校验方式。镜像方式是指:RAID设备中一个硬盘的数据在其它硬盘中以镜像的方式储存,如RAID-1。校验方式系指:RAID设备中一部份硬盘储存经过计算后的校验数据,以达到数据冗余的效果,如RAID-5。
RAID-1又称镜像(Mirror),采用镜像容错来提高可靠性。即,每一工作磁盘都有一个或多个镜像磁盘,每次向工作硬盘写入数据时必须同时向镜像硬盘写入数据。如图1所示,RAID-1设备100的原始数据硬盘120有一个镜像硬盘140,因而原始数据硬盘120的数据将被复制至镜像硬盘140。读取数据时,当原始数据硬盘120出现问题,可以从其镜像硬盘140中读取数据。这种磁盘阵列可靠性高,但其有效容量减小到总容量的一半以下。
如图2所示RAID-5设备200包含三个硬盘220、240和260。其中,字母“C”为硬盘220、240和260中用于写校验值的数据区块。RAID-5设备200的校验算法为奇偶校验(Parity Check),即从硬盘220、240或260中读取数据,对每个硬盘中相同位置的数据进行互斥(XOR)运算,把结果写入存放校验值的硬盘中的相同位置。例如,读取硬盘220的第一个位的值和硬盘240的第一个位的值,将读取的两个位的值进行互斥(XOR)运算,把运算结果写入硬盘260的第一个位。不同类型的磁盘阵列设备使用的校验算法和数据储存结构不同,然其基本逻辑与RAID-5相同。
当RAID设备刚被创建时,需要一个同步过程以初始化原始数据。
然而现有技术的RAID设备在创建时进行同步操作的做法存在以下缺陷:
1、同步操作生成的数据没有意义。
2、同步操作时间较长,且同步过程所需的大量读写入操作容易损坏硬盘。
3、同步操作中断后必须从RAID设备数据区域的起始位置重新开始。
4、同步操作降低系统整体效能。
5、同步操作容易给使用者造成疑惑。
发明内容
本发明所要解决的技术问题在于提供一种消除廉价磁盘冗余阵列(Redundant Arrays of Inexpensive Disks,简称RAID)设备的同步过程的方法,通过位映像(bitmap)消除RAID设备的同步过程。
本发明所提供的一种消除RAID设备的同步过程的方法,包含以下步骤:创建与RAID设备的多个数据区块对应的位映像;当对RAID设备的一数据区块进行读取操作时,读取位映像中与此数据区块对应的值;当位映像中对应的值为0时,读取操作依照读取的数据均为0处理;当位映像中对应的值为1时,依照RAID设备的读取操作流程进行处理;当对RAID设备的此数据区块进行写入操作时,读取位映 像中与此数据区块对应的值;当位映像中对应的值为0时,计算此数据区块的校验值,将校验值写入RAID设备,或将此数据区块的值复制至一个镜像硬盘,并依照RAID设备的写入操作流程进行处理,且对位映像中对应的值设定值为1;以及当位映像中对应的值为1时,依照RAID设备的写入操作流程进行处理。
其中,位映像于RAID设备初始化前创建,且因为建立有位映像,因此RAID设备初始化时便不需要再进行同步操作。
综上所述,本发明的优点在于消除了RAID设备创建时的同步过程,因而RAID设备从创建开始即具有正常的效能,同时消除了同步过程所需的大量读写入操作,进一步提高了RAID设备的效能,保护了RAID设备中的硬盘。而且,RAID设备的生命周期更加清晰,消除了RAID设备同步过程给使用者造成的疑惑。
附图说明
图1为现有技术的RAID-1的数据储存结构的方块图;
图2为现有技术的RAID-5的数据储存结构的方块图;
图3为依照本发明的RAID设备的数据储存结构的方块图;
图4为本发明的方法流程图;
图5为本发明的读取操作的处理方法流程图;
图6为依照本发明的RAID-1的写入操作的处理方法流程图;以及
图7为依照本发明的RAID-5的写入操作的处理方法流程图。
其中,附图标记:
100:RAID-1设备
120:原始数据硬盘
140:镜像硬盘
200:RAID-5设备
220、240、260:硬盘
300:RAID设备
320:位映像
步骤400读取RAID设备的大小,并依照数据区块的大小计算出位映像的大小
步骤420 以RAID-1的方式于RAID设备中创建位映像,对位映像的全部空间设定值为0
步骤440初始化RAID设备,但不进行RAID设备的同步操作
步骤460当对RAID设备的区块数据进行读、写入操作时,依照位映像中对应位的值执行对应操作
步骤500依照读取操作请求的RAID设备的数据区块的地址计算出位映像中对应位的地址
步骤520位的值为0?
步骤540读取操作依照读取的数据均为0处理
步骤560依照RAID设备的读取操作流程进行处理
步骤600依照写入操作请求的RAID设备的数据区块的地址计算出位映像中对应位的地址
步骤620位的值为0?
步骤640将此数据区块的值复制至一个镜像硬盘
步骤660依照RAID-1的写入操作流程进行处理,并对位的值设定值为1
步骤680 依照RAID-1的写入操作流程进行处理
步骤700依照写入操作请求的RAID设备的数据区块的地址计算出位映像中对应位的地址
步骤720位的值为0?
步骤740计算此数据区块的校验值,将校验值写入RAID设备
步骤760依照RAID-5的写入操作流程进行处理,并对位的值设定值为1
步骤780依照RAID-5的写入操作流程进行处理
具体实施方式
有关本发明的特征与实作,兹配合图示作最佳实施例详细说明如下。
如图3所示,图3为依照本发明的RAID设备的数据储存结构的方块图。如图所示,位映像320以RAID-1的方式创建于RAID设备300,即位映像320以镜像的方式位于RAID设备300的每一个硬盘(硬盘1、硬盘2、硬盘3、硬盘4和硬盘5)。其中,位映像320的每一位分别对应RAID设备300的每一数据区块。位映像320的大小通过以下公式计算得到:位映像的大小÷RAID设备的大小=1÷(RAID设备的数据区块的字节数目×8)(公式一)。假设RAID设备300的容量为1T(即,1024×1024M),每一个数据区块的大小为64K,则位映像320的大小为:1024×1024÷(1024×64×8)=2M。因此,位映像320在RAID设备300中所占空间极小,不会对RAID设备300的效能造成影响。而位映像320的每一位的地址与RAID设备300的每一数据区块的地址的对应关系也可通过如下方法推得。
从位映像320中的一个位得到其所映像的数据区块的过程如下:首先,计算出此位在位映像320中的相对位置;这个相对位置的值,与此位所映像的数据区块在整个数据区域中的相对位置的值是相同的,然后,利用此相对位置的值,在数据区域中找出此位所映像的数据区块。找出所映像的数据区块时,需要用到数据区块的大小这个值。如果数据区块的大小为A,位在位映像320中的相对位置为L,则此位所映像的数据区块的起始位置为:A×L,结束位置为A×(L+1)-1。
同样,位映像320可以位于其它储存设备,如通过网络与RAID设备300相连的硬盘等。为了提高RAID设备300的效能,还可以在开始使用RAID设备300时,将与RAID设备300对应的位映像320读入内存的高速缓存中。当从位映像320读数据时,直接从高速缓存中读取数据;当向位映像320写入数据时,先将数据写入高速缓存,并于一定时间或不再使用此RAID设备300后,刷新高速缓存的数据至实体硬盘。
请参考图4,图4为本发明的方法流程图。如图所示,本发明的消除RAID设备的同步过程的方法包含以下步骤:
读取RAID设备的每一个硬盘(硬盘1、硬盘2、硬盘3、硬盘4和硬盘5)的容量,依照RAID设备的数据区块的大小,通过(公式一)计算出位映像的大小(步骤400)。其中,数据区块的大小通过使用者预先设定。接着,依照计算得到的位映像的大小,以RAID-1的方式在RAID设备的每一个硬盘(硬盘1、硬盘2、硬盘3、硬盘4和硬盘5)上创建位映像,并对位映像的全部空间设定值为0(步骤420)。
位映像创建完毕后,在RAID设备的剩余空间中依照需要创建的RAID设备模式(如RAID-1、RAID-5、RAID-6)进行RAID设备初始化,但不进行RAID设备的同步操作(步骤440)。当对RAID设备的一个数据区块进行读、写入操作时,依照位映像中与此数据区块对应的位的值进行对应操作(步骤460)。在此,位的值为0用以标记此位对应的数据区块未进行同步操作,而位的值为1用以标记此位对应的数据区块已完成同步操作。因而,任何本领域的技术人员均可采用其它标记方式以达到相同的功效。
依照上述描述,RAID设备于初始化时并不进行RAID设备的同步操作,因而RAID设备从创建开始即具有正常的效能,同时消除了同步过程所需的大量读写入操作,进一步提高了RAID设备的效能,保护了RAID设备中的硬盘。而且,RAID设备的生命周期更加清晰,消除了RAID设备同步过程给使用者造成的疑惑。
以下将结合图5、图6和图7详细描述RAID设备的读、写入操作的具体处理流程。
现在请参考图5,图5所示为依照本发明的读取操作的处理方法流程图。当对RAID设备的数据区块进行读取操作时,先依照读取操作请求的数据区块的地址通过(公式一)计算出位映像中对应位的地址(步骤500)。读取对应位的值,判断对应位的值是否为0(步骤520)。当对应位的值为0时,读取操作依照读取的数据均为0处理(步骤540)。当对应位的值为1时,依照RAID设备的读取操作流程进行处理(步骤560)。
现在请参考图6,图6所示为依照本发明的RAID-1的写入操作的处理方法流程图。当对RAID-1的数据区块进行写入操作时,先依照写入操作请求的数据区块地址通过(公式一)计算出位映像中对应位的地址(步骤600)。读取对应位的值,判断对应位的值是否为0(步骤620)。当对应位的值为0时,将数据区块的值复制至RAID-1的镜像硬盘(步骤640)。接着,依照RAID-1的写入操作流程进行处理,对对应位的值设定值为1(步骤660)。当对应位的值为1时,依照RAID-1的写入操作流程进行处理(步骤680)。同理,其它采用镜像方式的RAID设备也可通过上述方式实现写入操作。
现在请参考图7,图7所示为依照本发明的RAID-5的写入操作的处理方法流程图。当对RAID-5的数据区块进行写入操作时,先依照写入操作请求的数据区块地址通过(公式一)计算出位映像中对应位的地址(步骤700)。读取对应位的值,判断对应位的值是否为0(步骤720)。当对应位的值为0时,依照RAID-5的奇偶校验算法计算数据区块的校验值,将计算得到的校验值写入RAID-5的校验数据区块(步骤740)。接着,依照RAID-5的写入操作流程进行处理,对对应位的值设定值为1(步骤760)。当对应位的值为1时,依照RAID-5的写入操作流程进行处理(步骤780)。同理,其它采用校验方式的RAID设备(例如,RAID-6等)也可通过上述方式实现写入操作。
当然,本发明还可有其它多种实施例,在不背离本发明精神及其实质的情况下,熟悉本领域的普通技术人员当可根据本发明做出各种相应的改变和变形,但这些相应的改变和变形都应属于本发明所附的权利要求的保护范围。
Claims (8)
1.一种消除RAID设备的同步过程的方法,通过一位映像消除一RAID设备的同步过程,其特征在于,该方法包含以下步骤:
创建与该RAID设备的多个数据区块对应的该位映像;
当对该RAID设备的一数据区块进行读取操作时,读取该位映像中与该数据区块对应的值;
当该位映像中对应的值为0时,读取操作依照读取的数据均为0处理;
当该位映像中对应的值为1时,依照该RAID设备的读取操作流程进行处理;
当对该RAID设备的该数据区块进行写入操作时,读取该位映像中与该数据区块对应的值;
当该位映像中对应的值为0时,计算该数据区块的校验值,将校验值写入该RAID设备,或将该数据区块的值复制至一镜像硬盘,并依照该RAID设备的写入操作流程进行处理,且对该位映像中对应的值设定值为1;以及
当该位映像中对应的值为1时,依照该RAID设备的写入操作流程进行处理。
2.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该位映像在该RAID设备初始化前创建。
3.根据权利要求2所述的消除RAID设备的同步过程的方法,其特征在于,该RAID设备初始化时不进行同步操作。
4.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该创建与该RAID设备的多个数据区块对应的该位映像的步骤进一步包含:于该位映像创建完毕后,对该位映像的全部空间设定值为0。
5.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该位映像以RAID-1的方式创建。
6.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该位映像的每一位分别对应该RAID设备的每一数据区块。
7.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该位映像的大小通过以下公式计算得到:该位映像的大小÷该RAID设备的大小=1÷(该RAID设备的数据区块的字节数目×8)。
8.根据权利要求1所述的消除RAID设备的同步过程的方法,其特征在于,该位映像位于该RAID设备。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200610109725XA CN101122882A (zh) | 2006-08-09 | 2006-08-09 | 消除廉价磁盘冗余阵列设备的同步过程的方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CNA200610109725XA CN101122882A (zh) | 2006-08-09 | 2006-08-09 | 消除廉价磁盘冗余阵列设备的同步过程的方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101122882A true CN101122882A (zh) | 2008-02-13 |
Family
ID=39085222
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CNA200610109725XA Pending CN101122882A (zh) | 2006-08-09 | 2006-08-09 | 消除廉价磁盘冗余阵列设备的同步过程的方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101122882A (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582282B (zh) * | 2008-05-16 | 2011-11-16 | 索尼株式会社 | 光盘记录装置、数据记录方法、以及数据记录程序 |
CN106648473A (zh) * | 2016-12-30 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种双控raid同步方法及装置 |
CN107273051A (zh) * | 2017-05-15 | 2017-10-20 | 北京华云网际科技有限公司 | Io数据的读写方法和装置 |
-
2006
- 2006-08-09 CN CNA200610109725XA patent/CN101122882A/zh active Pending
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101582282B (zh) * | 2008-05-16 | 2011-11-16 | 索尼株式会社 | 光盘记录装置、数据记录方法、以及数据记录程序 |
CN106648473A (zh) * | 2016-12-30 | 2017-05-10 | 郑州云海信息技术有限公司 | 一种双控raid同步方法及装置 |
CN106648473B (zh) * | 2016-12-30 | 2019-09-24 | 郑州云海信息技术有限公司 | 一种双控raid同步方法及装置 |
CN107273051A (zh) * | 2017-05-15 | 2017-10-20 | 北京华云网际科技有限公司 | Io数据的读写方法和装置 |
CN107273051B (zh) * | 2017-05-15 | 2018-07-03 | 北京华云网际科技有限公司 | Io数据的读写方法和装置 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10126988B1 (en) | Assigning RAID extents and changing drive extent allocations within RAID extents when splitting a group of storage drives into partnership groups in a data storage system | |
CN103793182B (zh) | 用于可扩展存储保护的系统和方法 | |
CN106201338B (zh) | 数据存储方法及装置 | |
US6070249A (en) | Split parity spare disk achieving method in raid subsystem | |
US8341499B2 (en) | System and method for error detection in a redundant memory system | |
US20040024963A1 (en) | Method and system for striping data to accommodate integrity metadata | |
EP0768605A2 (en) | Reconstructing data blocks in a RAID array data storage system having storage device metadata and RAIDset metada | |
CN101923441B (zh) | 混合磁盘冗余阵列的写请求处理方法、控制器和存储系统 | |
JP2004227560A (ja) | 外部格納サブシステムにおけるパリティー格納方法及びエラーブロック復旧方法 | |
JPH0642193B2 (ja) | Dasdアレイのための更新記録方法及び装置 | |
US20080091916A1 (en) | Methods for data capacity expansion and data storage systems | |
CN103534688A (zh) | 数据恢复方法、存储设备和存储系统 | |
US8650435B2 (en) | Enhanced storage device replacement system and method | |
CN107729536A (zh) | 一种数据存储方法和装置 | |
US8402213B2 (en) | Data redundancy using two distributed mirror sets | |
WO2019226305A1 (en) | Parity log with delta bitmap | |
CN105302665A (zh) | 一种改进的写时拷贝快照方法及系统 | |
US9213486B2 (en) | Writing new data of a first block size to a second block size using a write-write mode | |
CN112119380B (zh) | 带有旁路的奇偶校验记录 | |
CN104461373B (zh) | 一种raid数据处理方法及装置 | |
US7130973B1 (en) | Method and apparatus to restore data redundancy and utilize spare storage spaces | |
CN111816239A (zh) | 磁盘检测方法、装置、电子设备及机器可读存储介质 | |
CN101122882A (zh) | 消除廉价磁盘冗余阵列设备的同步过程的方法 | |
JP2006252165A (ja) | ディスクアレイ装置、及びコンピュータシステム | |
US20060074960A1 (en) | Providing data integrity for data streams |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |