CN102012847B - 一种磁盘阵列重建方法 - Google Patents

一种磁盘阵列重建方法 Download PDF

Info

Publication number
CN102012847B
CN102012847B CN 201010581876 CN201010581876A CN102012847B CN 102012847 B CN102012847 B CN 102012847B CN 201010581876 CN201010581876 CN 201010581876 CN 201010581876 A CN201010581876 A CN 201010581876A CN 102012847 B CN102012847 B CN 102012847B
Authority
CN
China
Prior art keywords
disk
data
raid system
raid
alarm panel
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
Application number
CN 201010581876
Other languages
English (en)
Other versions
CN102012847A (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.)
Innovation Technology Co., Ltd.
Shenzhen Innovation Technology Co., Ltd.
Original Assignee
UIT STORAGE TECHNOLOGY (SHENZHEN) Co Ltd
Innovation And Technology Storage 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 UIT STORAGE TECHNOLOGY (SHENZHEN) Co Ltd, Innovation And Technology Storage Technology Co Ltd filed Critical UIT STORAGE TECHNOLOGY (SHENZHEN) Co Ltd
Priority to CN 201010581876 priority Critical patent/CN102012847B/zh
Publication of CN102012847A publication Critical patent/CN102012847A/zh
Application granted granted Critical
Publication of CN102012847B publication Critical patent/CN102012847B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Debugging And Monitoring (AREA)

Abstract

本发明提供了一种磁盘阵列重建方法,包括如下步骤:A、统计独立冗余磁盘阵列RAID系统中磁盘上的错误计数;B、判断RAID系统中一块磁盘上的错误计数是否超过预设的阈值,若是,执行步骤C,否则返回步骤A;C、将所述磁盘设置为告警盘,激活预先设置的热备盘,将告警盘上已有的数据复制到热备盘上;D、复制完成后,将告警盘从RAID系统中清除,将热备盘代替出错磁盘作为RAID系统的组成磁盘。本发明方案可以有效降低重建过程中数据丢失的风险,并加快重建的过程。

Description

一种磁盘阵列重建方法
技术领域
本发明涉及计算机存储技术领域,特别涉及独立冗余磁盘阵列(Redundant Array of Independent Disks,RAID)技术,尤其涉及一种磁盘阵列重建方法。
背景技术
RAID是一种把多块独立的磁盘按不同的方式组合起来形成一个磁盘组(逻辑磁盘),从而提供比单个磁盘更高的存储性能和提供数据冗余保护的技术。RAID技术的原理,就是把数据和相对应的奇偶校验信息存储到组成RAID系统的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID系统的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。作为网络存储系统的基础和关键部件,RAID以其快速、海量和高可靠性的特点而著称。RAID技术出现后,在工业、军事、教育等各个领域的应用需求十分广泛,对RAID技术的研究也一直是行业热点。
组成磁盘阵列的不同方式称为RAID级别(RAID Levels)。比如常见的RAID级别有RAID0,RAID1,RAID5,RAID6等。不同的RAID级别提供不同的数据保护方案。
以4块磁盘组成的RAID5为例,只允许有一块硬盘出现故障,一块磁盘出现故障时,RAID5就不具备数据冗余保护功能了,所以出现故障盘时需要尽快更换。当更换故障硬盘后,磁盘控制器会利用正常磁盘上的数据及奇偶校验进行计算,将计算的结果写入更换后的磁盘上,这个过程叫做RAID的重建。
重建的目的是为了让RAID重新具有数据冗余保护功能。在出现RAID的磁盘故障时,磁盘阵列厂商普遍使用热备盘技术来实现RAID的自动重建。热备盘技术,简单来说,就是在创建RAID系统时,为该RAID指定一块磁盘作为热备盘,当RAID系统的某块成员磁盘发生故障时,热备盘能够自动替换故障磁盘,触发RAID重建。顾名思义,“热”备盘在替换故障磁盘时,不需要中断RAID系统上的读写业务,即RAID系统重建时,仍然可以进行对该RAID系统进行读写操作。
当前大部分厂家的这种利用热备盘进行RAID自动重建的技术有如下的技术缺点:
在一块磁盘彻底发生故障时,才用热备盘进行重建,在重建的过程中,raid再有一块磁盘发生故障时,raid上的数据将有可能丢失;以4块盘的raid5为例,disk4发生故障后,需要利用disk1,disk2和disk3上数据和奇偶校验进行重建,将重建的数据写入disk5,如果重建过程中,disk1-disk3中任一块磁盘发生故障,那么将重建失败,造成数据丢失;此外,重建的过程比较慢,raid在重建的过程中,读写性能将受到较大影响。
发明内容
本发明提供了一种磁盘阵列重建方法,可以有效降低重建过程中数据丢失的风险,并加快重建的过程。
本发明实施例提出的一种磁盘阵列重建方法,包括如下步骤:
A、统计独立冗余磁盘阵列RAID系统中磁盘上的错误计数;
B、判断RAID系统中一块磁盘上的错误计数是否超过预设的阈值,若是,执行步骤C1,否则返回步骤A;
C1、将所述磁盘设置为告警盘,激活预先设置的热备盘,创建每一位初始值为0的位图表,所述位图表的每一位,对应于告警盘的一个条带;
C2、将告警盘上的所有数据复制到所述热备盘;如果复制过程中,发现告警盘上的部分数据已损坏,则将已损坏数据所在的条带对应的位图表上的位设置为1;
D、复制完成后,根据RAID系统中正常盘以及奇偶校验,计算出位图表值为1的位对应的告警盘的条带的数据,并将所计算的数据写入热备盘中;将告警盘从RAID系统中清除,将热备盘代替出错磁盘作为RAID系统的组成磁盘。
较佳地,所述统计RAID系统中磁盘上的错误计数为:统计RAID系统中磁盘上特定错误类型的总数及一段时间内特定错误类型累计的计数。
较佳地,所述特定错误类型为命令超时,介质错误,磁盘非正常或通道错误。
较佳地,所述步骤C进一步包括:将需要写入出错磁盘的数据写入到所述热备盘。
较佳地,所述步骤C2进一步包括:如果复制过程中需要写告警盘,则将写数据需要改写的条带所对应的位图表上的位设置为1。
从以上技术方案可以看出,通过对磁盘阵列中磁盘的错误进行计数,在磁盘彻底损坏之前,触发对磁盘的重建过程;由于磁盘重建时磁盘尚能工作,因此可以用磁盘拷贝的方式将数据从告警盘复制到热备盘,极大缩短了重建所需的时间,从而有效降低重建过程中数据丢失的风险。
附图说明
图1为本发明实施例一提出的磁盘阵列重建流程示意图;
图2为本发明实施例二提出的磁盘阵列重建流程示意图。
具体实施方式
磁盘是机电设备,磁盘读写过程中,会出现一些错误,这些错误包括介质错误,机械错误,电子错误以及各种软件错误,比如SCSI命令超时等,这些错误在系统的重试等机制下,能够得到及时的修正,对数据不会造成破坏。但是一旦磁盘上大量出现错误,那么很有可能磁盘在不久的将来会彻底出现故障。
本发明方案通过统计和监控RAID系统中各种类型的磁盘错误数统计,用来预判磁盘的健康状态,当预判磁盘可能彻底故障时,将该磁盘设置为告警盘,触发RAID系统的重建。由于此时磁盘并未彻底损坏,其上存储的大部分数据还是完好的,因此本发明方案所述的重建过程可以与现有技术不同,采用磁盘拷贝的方式将告警盘的数据拷贝到热备盘。
较佳地,如果拷贝过程中遇到已损坏或被更改的数据,再用现有的重建方式,根据RAID系统中的其他盘的数据和奇偶校验来对已损坏或更改的数据进行恢复。
本发明所述磁盘错误类型包括但不限于:命令超时,介质错误,磁盘非正常,通道错误及其他错误类型。
以下所述RAID系统具有数据冗余保护功能,且指定了热备盘。
本发明实施例一提出的磁盘阵列重建流程如图1所示,包括如下步骤:
步骤101:统计RAID系统中磁盘上的各种错误计数,包括但不限于某种错误类型的总数及一段时间内某种错误类型累计的计数。
步骤102:判断一块磁盘上某种错误类型的总计数或者一段时间内某种错误累计数是否超过了预设的阈值,若是,则执行步骤103,否则,返回步骤101。
举个例子,如果一块磁盘的介质错误统计总数查过了500个,或者24小时内超过200个,则这块磁盘将被系统设置为警告状态。
步骤103:激活预先设置的热备盘。
步骤104:将告警盘上已有的数据复制到热备盘上。
如果在拷贝过程中,要向告警盘上写新的数据,将需要写入告警盘的数据写入到所述热备盘。
步骤105:复制完成后,将告警盘从RAID系统中清除,将热备盘代替出错磁盘作为RAID系统的组成磁盘。
实施例一的技术方案仅提出了本发明的基本框架,但对于出错磁盘上的部分数据已经损坏的情况,则没有相应的解决方案。有鉴于此,本发明实施例二提出了较为完善的技术方案,可以解决上述技术问题。
本发明实施例二提出的磁盘阵列重建流程如图2所示,包括如下步骤:
步骤201:统计RAID系统中磁盘上的各种错误计数,包括但不限于某种错误类型的总数及一段时间内某种错误类型累计的计数。
步骤202:判断一块磁盘上某种错误类型的总计数或者一段时间内某种错误累计数是否超过了预设的阈值,若是,则执行步骤203,否则,返回步骤201。
步骤203:将出错磁盘设置为告警状态,激活热备盘,并创建位图表(bitmap),所述位图表的每一位,对应于告警盘的一个条带。初始时,位图表的每一位的值均为0。
步骤204:将告警状态的磁盘上的所有数据拷贝到被激活的热备盘。
如果拷贝过程中,发现告警盘上的部分数据已损坏导致数据无法拷贝,则将已损坏数据所在的条带对应的位图表上的位设置为1。
如果拷贝过程中,需要写告警盘,则将写数据需要改写的条带所对应的位图表上的位设置为1。
如果拷贝过程中,需要读取告警盘上的数据,则通过RAID系统中其他正常盘计算出所要读取的数据并返回。
步骤205:拷贝完成后,根据正常盘以及奇偶校验,计算出位图表值为1的位对应的告警盘的条带的数据,并将所计算的数据写入热备盘中。
步骤206:将告警盘从RAID系统中清除,将热备盘取代告警盘作为RAID系统的组成磁盘,完成重建过程。
实施例二的技术方案中将磁盘拷贝与传统的重建技术相结合,对于告警盘的绝大部分数据采用磁盘拷贝的方式转移到热备盘,以节约系统重建时间;对于已损坏的数据,则采用传统的重建方式恢复数据。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明保护的范围之内。

Claims (5)

1.一种磁盘阵列重建方法,其特征在于,包括如下步骤:
A、统计独立冗余磁盘阵列RAID系统中磁盘上的错误计数;
B、判断RAID系统中一块磁盘上的错误计数是否超过预设的阈值,若是,执行步骤C1,否则返回步骤A;
C1、将所述磁盘设置为告警盘,激活预先设置的热备盘,创建每一位初始值为0的位图表,所述位图表的每一位,对应于告警盘的一个条带;
C2、将告警盘上的所有数据复制到所述热备盘;如果复制过程中,发现告警盘上的部分数据已损坏,则将已损坏数据所在的条带对应的位图表上的位设置为1;
D、复制完成后,根据RAID系统中正常盘以及奇偶校验,计算出位图表值为1的位对应的告警盘的条带的数据,并将所计算的数据写入热备盘中;将告警盘从RAID系统中清除,将热备盘代替出错磁盘作为RAID系统的组成磁盘。
2.根据权利要求1所述的方法,其特征在于,所述统计RAID系统中磁盘上的错误计数为:统计RAID系统中磁盘上特定错误类型的总数及一段时间内特定错误类型累计的计数。
3.根据权利要求2所述的方法,其特征在于,所述特定错误类型为命令超时,介质错误,磁盘非正常或通道错误。
4.根据权利要求1所述的方法,其特征在于,所述步骤C进一步包括:将需要写入出错磁盘的数据写入到所述热备盘。
5.根据权利要求1所述的方法,其特征在于,所述步骤C2进一步包括:如果复制过程中需要写告警盘,则将写数据需要改写的条带所对应的位图表上的位设置为1。
CN 201010581876 2010-12-06 2010-12-06 一种磁盘阵列重建方法 Active CN102012847B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN 201010581876 CN102012847B (zh) 2010-12-06 2010-12-06 一种磁盘阵列重建方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 201010581876 CN102012847B (zh) 2010-12-06 2010-12-06 一种磁盘阵列重建方法

Publications (2)

Publication Number Publication Date
CN102012847A CN102012847A (zh) 2011-04-13
CN102012847B true CN102012847B (zh) 2013-05-08

Family

ID=43843023

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 201010581876 Active CN102012847B (zh) 2010-12-06 2010-12-06 一种磁盘阵列重建方法

Country Status (1)

Country Link
CN (1) CN102012847B (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9645897B2 (en) 2015-03-11 2017-05-09 International Business Machines Corporation Using duplicated data to enhance data security in RAID environments

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8635500B2 (en) * 2011-08-09 2014-01-21 Alcatel Lucent System and method for powering redundant components
CN102508733B (zh) * 2011-09-22 2016-01-20 杭州华三通信技术有限公司 一种基于磁盘阵列的数据处理方法及磁盘阵列管理器
CN102385544B (zh) * 2011-12-12 2014-07-16 创新科软件技术(深圳)有限公司 一种磁盘重建方法和装置
CN102609223B (zh) * 2012-02-13 2015-06-24 浪潮(北京)电子信息产业有限公司 一种独立冗余磁盘阵列系统及其初始化方法
CN102999399B (zh) * 2012-11-13 2016-08-03 浙江宇视科技有限公司 一种jbod阵列自动恢复存储的方法和装置
CN102981778B (zh) * 2012-11-15 2016-11-16 浙江宇视科技有限公司 一种raid阵列重建方法及装置
CN103473020A (zh) * 2013-09-22 2013-12-25 浪潮(北京)电子信息产业有限公司 一种Raid配置方法和装置
CN103488547A (zh) * 2013-09-24 2014-01-01 浪潮电子信息产业股份有限公司 一种raid组故障硬盘快速重建的方法
CN105302677A (zh) * 2014-07-29 2016-02-03 株式会社东芝 信息处理装置和信息处理方法
CN105335256B (zh) * 2014-08-15 2019-01-15 中国电信股份有限公司 在整机柜服务器中切换备份磁盘的方法、装置和系统
CN104407821B (zh) * 2014-12-12 2018-02-06 浪潮(北京)电子信息产业有限公司 一种实现raid重构的方法及装置
CN104636082B (zh) * 2014-12-30 2019-02-22 曙光信息产业股份有限公司 磁盘阵列raid的控制方法及装置
CN107886992A (zh) * 2017-11-06 2018-04-06 郑州云海信息技术有限公司 一种raid健康状态检测方法、系统及相关装置
CN108874314A (zh) * 2018-05-31 2018-11-23 郑州云海信息技术有限公司 一种独立冗余磁盘阵列的重构方法及装置
CN109189338B (zh) * 2018-08-27 2021-06-18 郑州云海信息技术有限公司 一种热备盘添加的方法、系统及设备
CN109799953B (zh) * 2018-12-14 2022-10-11 深圳创新科技术有限公司 一种快速重建raid的方法和装置
CN111831470B (zh) * 2019-04-18 2024-03-08 上海川源信息科技有限公司 磁盘阵列系统的数据还原方法
CN112084061A (zh) * 2019-06-15 2020-12-15 国际商业机器公司 减少相同raid级别的raid阵列中的数据丢失事件
CN113238991B (zh) * 2021-07-12 2021-11-05 湖南博匠信息科技有限公司 一种基于fpga实现硬raid卡功能的方法
CN113986127A (zh) * 2021-10-26 2022-01-28 深信服科技股份有限公司 一种磁盘切换方法、装置、设备及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223252B1 (en) * 1998-05-04 2001-04-24 International Business Machines Corporation Hot spare light weight mirror for raid system
CN1805453A (zh) * 2005-01-10 2006-07-19 英业达股份有限公司 储存装置数据传输稳定性检测方法及系统
CN101006431A (zh) * 2004-08-04 2007-07-25 达西系统股份有限公司 执行容错磁盘阵列的预先重建

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6223252B1 (en) * 1998-05-04 2001-04-24 International Business Machines Corporation Hot spare light weight mirror for raid system
CN101006431A (zh) * 2004-08-04 2007-07-25 达西系统股份有限公司 执行容错磁盘阵列的预先重建
CN1805453A (zh) * 2005-01-10 2006-07-19 英业达股份有限公司 储存装置数据传输稳定性检测方法及系统

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9645897B2 (en) 2015-03-11 2017-05-09 International Business Machines Corporation Using duplicated data to enhance data security in RAID environments

Also Published As

Publication number Publication date
CN102012847A (zh) 2011-04-13

Similar Documents

Publication Publication Date Title
CN102012847B (zh) 一种磁盘阵列重建方法
TWI450087B (zh) 複數個磁碟陣列系統之資料儲存方法及資料儲存系統
US9009526B2 (en) Rebuilding drive data
US7565573B2 (en) Data-duplication control apparatus
US8289641B1 (en) Partial data storage device failures and improved storage resiliency
US9189311B2 (en) Rebuilding a storage array
CN100353328C (zh) 用于控制存储的装置和方法
JP2008509474A (ja) 耐故障性raidアレイプリエンプティブ復元の実行
US7779202B2 (en) Apparatus and method for controlling disk array with redundancy and error counting
CN101887351B (zh) 一种磁盘阵列容错方法及其系统
US20080126840A1 (en) Method for reconstructing data in case of two disk drives of raid failure and system therefor
US7836268B2 (en) Method, apparatus, and system for controlling data storage
CN102799533B (zh) 一种磁盘损坏扇区屏蔽方法及装置
JPWO2006123416A1 (ja) ディスク故障復旧方法及びディスクアレイ装置
CN103019894B (zh) 一种独立冗余磁盘阵列的重建方法
CN103699457A (zh) 基于条带化的磁盘阵列修复方法及装置
CN102164165B (zh) 一种网络存储系统的管理方法及装置
CN102508733A (zh) 一种基于磁盘阵列的数据处理方法及磁盘阵列管理器
CN109032513B (zh) 基于ssd和hdd的raid架构及其备份、重建方法
CN103678025B (zh) 一种磁盘阵列中的磁盘故障处理方法
JPH09269871A (ja) ディスクアレイ装置におけるデータ再冗長化方式
CN102495680A (zh) Raid系统的重建方法
TW201329701A (zh) 具有自動重映射功能的磁碟陣列及其自動重映射方法
CN106528342A (zh) 一种具有云服务器备份的磁盘阵列容错装置
CN102147714B (zh) 一种网络存储系统的管理方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CP03 Change of name, title or address
CP03 Change of name, title or address

Address after: Room 505, Taixing Building, 11 Garden East Road, Haidian District, Beijing, 100191

Co-patentee after: Shenzhen Innovation Technology Co., Ltd.

Patentee after: Innovation Technology Co., Ltd.

Address before: Room 0801-0810, 51 College Road, Haidian District, Beijing, 100191

Co-patentee before: UIT Storage Technology (Shenzhen) Co., Ltd.

Patentee before: Innovation and Technology Storage Technology Co., Ltd.