CN106250278A - 一种一键执行的磁盘阵列数据恢复方法 - Google Patents
一种一键执行的磁盘阵列数据恢复方法 Download PDFInfo
- Publication number
- CN106250278A CN106250278A CN201610628256.6A CN201610628256A CN106250278A CN 106250278 A CN106250278 A CN 106250278A CN 201610628256 A CN201610628256 A CN 201610628256A CN 106250278 A CN106250278 A CN 106250278A
- Authority
- CN
- China
- Prior art keywords
- array
- uuid
- hard disk
- data
- information
- 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
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/07—Responding to the occurrence of a fault, e.g. fault tolerance
- G06F11/16—Error detection or correction of the data by redundancy in hardware
- G06F11/20—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements
- G06F11/2053—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant
- G06F11/2056—Error detection or correction of the data by redundancy in hardware using active fault-masking, e.g. by switching out faulty elements or by switching in spare elements where persistent mass storage functionality or persistent mass storage control functionality is redundant by mirroring
- G06F11/2069—Management of state, configuration or failover
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供一种一键执行的磁盘阵列数据恢复方法,包括以下步骤:S1、获取阵列名称;S2、确认阵列名称;S3、阵列名称确认后,检查此阵列的信息,从待恢复的阵列中得到相关信息;S4、确认阵列中的硬盘信息后,将原硬盘信息与目前设备上在位的硬盘进行对比;S5、将经过确认的硬盘UUID信息,写入阵列创建函数;S6、执行阵列创建函数。本发明通过读取数据库中记录的阵列信息,根据设备中阵列最后一次的正常状态,重新创建阵列。个别的磁盘IO错误,并不会对阵列中的视频数据产生实质性的影响。因此,保证了阵列恢复的准确性和视频文件的可用性,同时,本功能可以由用户在客户端一键操作,设备会自动将阵列恢复完成,操作简便。
Description
技术领域
本发明涉及数据恢复技术领域,尤其涉及一种一键执行的磁盘阵列数据恢复方法。
背景技术
在存储系统的故障中,硬盘故障占比高达90%。因此,硬盘是整个存储中最需要保护的子系统。而硬盘中,存在一个名为“不可修复读错误(unrecovered read error)”的概念(也有硬盘厂家称其为误码率),其含义是:当硬盘的读操作达到某个累积值后,硬盘会出现一次IO错误,这种错误是无法修复的物理损坏,这个情况不可避免。以视频监控常用的硬盘类型为例,企业级SATA硬盘的误码率为通常为1/10^15bit,监控级SATA硬盘的误码率为通常为1/10^14bit,其含义是,对于监控级硬盘,每读取10^14bit(即900TB)的数据量,就会发生一次不可修复读错误。
目前主流24盘位监控存储容量约80TB(采用4TB硬盘),按照常规码流50MB/s,每台存储约1个月即可写完一遍,因此,在一个中型视频存储项目中,如果有10台24盘位存储配备4TB硬盘,理论上每过1个月,就会出现一次不可修复读错误。视频监控存储存在写入数据量大、硬盘质量参差不齐的问题,极易出现阵列失效而丢失数据,此时需要有一种稳定易用的方法提高数据可用性,保证视频不丢失。
元数据(metadata)是描述存储数据属性的数据,而存储数据是我们广义上理解的数据。在当前的存储系统中,RAID元数据信息通常与存储数据分开存储,即存储数据存放在硬盘中,而元数据存放在硬盘中,同时也存放在系统盘中。当硬盘发生IO错误时,RAID存储数据受影响,同时RAID元数据更改,记录此硬盘为下线状态。
非结构化数据主要指视频、音频等数据信息不固定的数据,对于这类数据,特别是视频数据,小范围的某几个IO错误并不会对数据的可用性造成影响,本方案着重利用这一点,将RAID元数据重新创建,从而使出现IO错误的硬盘重新回到阵列中,以部分视频数据的完整性,换取视频数据的可用性。
以视频监控业界使用最多的RAID5为例,当RAID5阵列中,有一块盘发生故障,阵列变会为<降级>状态,此时数据读写均正常;此时如果有热备盘,阵列进入<重建>状态;阵列<降级>或<重建>时,如果再出现一块坏盘,阵列进入<失效>状态,此时阵列损坏,数据丢失。重建时,磁盘读IO骤增,此时极易出现不可修复读错误,根据以往的案例情况,绝大多数阵列失效,都是发生在重建期间。
UUID的作用是让系统中的所有元素具备唯一的辨识资讯,这个信息用户无法直接修改,如此一来,每个人都可以建立不与其它人冲突的 UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。存储系统中,用户可以指定阵列名称,但是UUID有系统生成。
发明内容
有鉴于现有技术的上述缺陷,本发明所要解决的技术问题是提供一种一键执行的磁盘阵列数据恢复方法,本技术实质上是通过读取数据库中记录的阵列信息,根据设备中阵列最后一次的正常状态,重新创建阵列。个别的磁盘IO错误,并不会对阵列中的视频数据产生实质性的影响。因此,只要找到原先的硬盘,按照原有的阵列信息重新创建,视频数据即可恢复。
为实现上述目的,本发明提供了一种一键执行的磁盘阵列数据恢复方法,其特征在于:包括以下步骤:
S1、获取阵列名称,在数据库中进行检索,找到状态为<失效>的阵列并记录其名字和UUID,分别记为rd_1和uuid_1;
S2、确认阵列名称,为了确保恢复系统的健壮性,阵列名称需要做进一步确认;
S3、阵列名称确认后,检查此阵列的信息,从待恢复的阵列中得到相关信息;
S4、确认阵列中的硬盘信息后,将原硬盘信息与目前设备上在位的硬盘进行对比;
S5、将经过确认的硬盘UUID信息,写入阵列创建函数;
S6、执行阵列创建函数。
进一步地,所述步骤S2确认阵列名称需要确认阵列的失效情况,包括:
a.当前系统中,能够扫描到阵列设备/dev/md*,记录当前系统阵列的名称UUID分别为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与当前系统中的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误;
b.当前系统中,已无法扫描到阵列设备/dev/md*,对当前系统的系统日志进行检索判断,找到系统中最后一条阵列信息失效的记录,并过滤出阵列的名字和UUID,分别用记为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与系统日志得出的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误。
进一步地,所述步骤S3需要得到的信息为:
a.阵列中所有数据盘UUID,记为u={UUID_1...UUID_n},用于阵列重新创建以及硬盘状态判断;
b.阵列重建成功次数存储系统中,并在阵列重建成功次数标志位。
进一步地,所述步骤S4包括:
a.所需恢复的阵列rd_1中,所有硬盘集合u={UUID_1...UUID_n},其中数据盘为n个;
b.当前存储上的x块硬盘的集合ur={UUID_r1...UUID_rx};
c.将待恢复的n块硬盘集合u={UUID_1...UUID_n}中的每一个元素与当前硬盘集合ur={UUID_r1...UUID_rx}进行对比,输出匹配的uuid,以此保证所需恢复的硬盘,都在当前的存储设备上。
本发明的有益效果是:
本发明通过读取数据库中记录的阵列信息,根据设备中阵列最后一次的正常状态,重新创建阵列。个别的磁盘IO错误,并不会对阵列中的视频数据产生实质性的影响。因此,保证了阵列恢复的准确性和视频文件的可用性,同时,本功能可以由用户在客户端一键操作,设备会自动将阵列恢复完成,操作简便。
以下将结合附图对本发明的构思、具体结构及产生的技术效果作进一步说明,以充分地了解本发明的目的、特征和效果。
附图说明
图1是本发明的确认阵列名称过程图。
图2是本发明的硬盘信息分析过程图。
图3是本发明的界面操作截图。
具体实施方式
本技术的恢复目标为RAID元数据,即多块硬盘发生IO错误,导致硬盘无法工作,阵列失效时,本技术可以对元数据进行重新创建,元数据恢复正常后,系统即可重新识别硬盘,使视频数据可读。为了实现本发明的目的,其技术方案如下:
如图1、2所示,一种一键执行的磁盘阵列数据恢复方法,其特征在于:包括以下步骤:
S1、获取阵列名称,在数据库中进行检索,找到状态为<失效>的阵列并记录其名字和UUID,分别记为rd_1和uuid_1;
S2、确认阵列名称,为了确保恢复系统的健壮性,阵列名称需要做进一步确认;
S3、阵列名称确认后,检查此阵列的信息,从待恢复的阵列中得到相关信息;
S4、确认阵列中的硬盘信息后,将原硬盘信息与目前设备上在位的硬盘进行对比;
S5、将经过确认的硬盘UUID信息,写入阵列创建函数;
S6、执行阵列创建函数。
本实施例中,所述步骤S2确认阵列名称需要确认阵列的失效情况,包括:
a.当前系统中,能够扫描到阵列设备/dev/md*,记录当前系统阵列的名称UUID分别为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与当前系统中的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误;
b.当前系统中,已无法扫描到阵列设备/dev/md*,对当前系统的系统日志进行检索判断,找到系统中最后一条阵列信息失效的记录,并过滤出阵列的名字和UUID,分别用记为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与系统日志得出的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误。
本实施例中,所述步骤S3需要得到的信息为:
a.阵列中所有数据盘UUID,记为u={UUID_1...UUID_n},用于阵列重新创建以及硬盘状态判断,由于热备盘不参与正常的读写操作,阵列恢复仅需要数据盘信息;
b.阵列重建成功次数存储系统中,并在阵列重建成功次数标志位,本恢复技术,需要考虑该阵列曾经成功重建的可能,因此,需要获取重建成功次数,并相应地修改其标志位。
本实施例中,所述步骤S4包括:
a.所需恢复的阵列rd_1中,所有硬盘集合u={UUID_1...UUID_n},其中数据盘为n个;
b.当前存储上的x块硬盘的集合ur={UUID_r1...UUID_rx};
c.由于一台存储设备,可以创建多个阵列,假设某个阵列中,有n个数据盘,而当前存储设备中,有x块硬盘。做数据恢复前,需要确认待恢复的n块盘,包含在当前的x块盘内。因此,需要将待恢复的n块硬盘集合u={UUID_1...UUID_n}中的每一个元素与当前硬盘集合ur={UUID_r1...UUID_rx}进行对比,输出匹配的uuid,以此保证所需恢复的硬盘,都在当前的存储设备上。
如图3所示,为了得到更好的用户体验,本套数据恢复技术,可以由用户在客户端界面一键执行,客户仅需点击按键,后台即可完成上述操作,并重启设备,设备重启后,阵列即可恢复正常。
以上详细描述了本发明的较佳具体实施例。应当理解,本领域的普通技术人员无需创造性劳动就可以根据本发明的构思做出诸多修改和变化。因此,凡本技术领域中技术人员依本发明的构思在现有技术的基础上通过逻辑分析、推理或者有限的实验可以得到的技术方案,皆应在由权利要求书所确定的保护范围内。
Claims (4)
1.一种一键执行的磁盘阵列数据恢复方法,其特征在于:包括以下步骤:
S1、获取阵列名称,在数据库中进行检索,找到状态为<失效>的阵列并记录其名字和UUID,分别记为rd_1和uuid_1;
S2、确认阵列名称,为了确保恢复系统的健壮性,阵列名称需要做进一步确认;
S3、阵列名称确认后,检查此阵列的信息,从待恢复的阵列中得到相关信息;
S4、确认阵列中的硬盘信息后,将原硬盘信息与目前设备上在位的硬盘进行对比;
S5、将经过确认的硬盘UUID信息,写入阵列创建函数;
S6、执行阵列创建函数。
2.如权利要求1所述的一种一键执行的磁盘阵列数据恢复方法,其特征在于,所述步骤S2确认阵列名称需要确认阵列的失效情况,包括:
a.当前系统中,能够扫描到阵列设备/dev/md*,记录当前系统阵列的名称UUID分别为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与当前系统中的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误;
b.当前系统中,已无法扫描到阵列设备/dev/md*,对当前系统的系统日志进行检索判断,找到系统中最后一条阵列信息失效的记录,并过滤出阵列的名字和UUID,分别用记为rd_2和uuid_2,此时,将数据库中记录的失效阵列rd_1与系统日志得出的阵列rd_2进行对比,如果UUID匹配,则阵列选择无误。
3.如权利要求1所述的一种一键执行的磁盘阵列数据恢复方法,其特征在于,所述步骤S3需要得到的信息为:
a.阵列中所有数据盘UUID,记为u={UUID_1...UUID_n},用于阵列重新创建以及硬盘状态判断;
b.阵列重建成功次数存储系统中,并在阵列重建成功次数标志位。
4.如权利要求1所述的一种一键执行的磁盘阵列数据恢复方法,其特征在于,所述步骤S4包括:
a.所需恢复的阵列rd_1中,所有硬盘集合u={UUID_1...UUID_n},其中数据盘为n个;
b.当前存储上的x块硬盘的集合ur={UUID_r1...UUID_rx};
c.将待恢复的n块硬盘集合u={UUID_1...UUID_n}中的每一个元素与当前硬盘集合ur={UUID_r1...UUID_rx}进行对比,输出匹配的uuid,以此保证所需恢复的硬盘,都在当前的存储设备上。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610628256.6A CN106250278A (zh) | 2016-08-04 | 2016-08-04 | 一种一键执行的磁盘阵列数据恢复方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610628256.6A CN106250278A (zh) | 2016-08-04 | 2016-08-04 | 一种一键执行的磁盘阵列数据恢复方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN106250278A true CN106250278A (zh) | 2016-12-21 |
Family
ID=57606000
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610628256.6A Pending CN106250278A (zh) | 2016-08-04 | 2016-08-04 | 一种一键执行的磁盘阵列数据恢复方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106250278A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008064A (zh) * | 2019-04-10 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种raid恢复方法、装置、设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782463B1 (en) * | 2011-10-27 | 2014-07-15 | Seagate Technology Llc | Restoring a failed storage volume after removal of a storage device from an array |
CN104391761A (zh) * | 2014-12-03 | 2015-03-04 | 浪潮集团有限公司 | 一种适用于视频监控领域的新型raid体系结构 |
CN104813290A (zh) * | 2012-12-06 | 2015-07-29 | 康佩伦特科技公司 | Raid调查器 |
CN104994168A (zh) * | 2015-07-14 | 2015-10-21 | 苏州科达科技股份有限公司 | 分布式存储方法及分布式存储系统 |
CN105117172A (zh) * | 2015-08-31 | 2015-12-02 | 北京神州云科数据技术有限公司 | 一种磁盘阵列历史掉盘记录的保存方法 |
CN105278882A (zh) * | 2015-10-26 | 2016-01-27 | 创新科存储技术有限公司 | 一种分布式文件系统的磁盘管理方法 |
-
2016
- 2016-08-04 CN CN201610628256.6A patent/CN106250278A/zh active Pending
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8782463B1 (en) * | 2011-10-27 | 2014-07-15 | Seagate Technology Llc | Restoring a failed storage volume after removal of a storage device from an array |
CN104813290A (zh) * | 2012-12-06 | 2015-07-29 | 康佩伦特科技公司 | Raid调查器 |
CN104391761A (zh) * | 2014-12-03 | 2015-03-04 | 浪潮集团有限公司 | 一种适用于视频监控领域的新型raid体系结构 |
CN104994168A (zh) * | 2015-07-14 | 2015-10-21 | 苏州科达科技股份有限公司 | 分布式存储方法及分布式存储系统 |
CN105117172A (zh) * | 2015-08-31 | 2015-12-02 | 北京神州云科数据技术有限公司 | 一种磁盘阵列历史掉盘记录的保存方法 |
CN105278882A (zh) * | 2015-10-26 | 2016-01-27 | 创新科存储技术有限公司 | 一种分布式文件系统的磁盘管理方法 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110008064A (zh) * | 2019-04-10 | 2019-07-12 | 苏州浪潮智能科技有限公司 | 一种raid恢复方法、装置、设备及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102270161B (zh) | 一种基于纠删码的多等级容错数据存储、读取和恢复方法 | |
CN101887351B (zh) | 一种磁盘阵列容错方法及其系统 | |
CN101916173B (zh) | 一种基于raid的数据读写方法及其系统 | |
CN101984400B (zh) | 一种raid控制方法、装置及系统 | |
US20040103246A1 (en) | Increased data availability with SMART drives | |
CN102508733A (zh) | 一种基于磁盘阵列的数据处理方法及磁盘阵列管理器 | |
CN104063187B (zh) | 适用于安防应用的硬盘文件系统及其运行方法 | |
KR101050475B1 (ko) | 데이터 백업 관리 장치 | |
CN104142872A (zh) | 一种raid磁盘阵列的快速重建方法 | |
CN111506251A (zh) | 数据处理方法、装置、smr存储系统及存储介质 | |
CN102999399B (zh) | 一种jbod阵列自动恢复存储的方法和装置 | |
CN102226892B (zh) | 一种磁盘容错处理方法及设备 | |
CN105068887A (zh) | 一种基于SQLServer数据库的数据恢复方法 | |
CN103176867B (zh) | 一种快速文件差异备份方法 | |
CN108874611A (zh) | 一种测试数据的构建方法及装置 | |
CN104317833B (zh) | 一种恢复系统文件索引的方法及装置 | |
CN105630417B (zh) | 一种raid5系统及在raid5系统失效后继续写数据的方法 | |
CN107977285A (zh) | 一种纠删码存储机制的数据修改方法、装置及介质 | |
CN103019626A (zh) | 存储系统、控制集群元数据的方法及装置 | |
CN105117172B (zh) | 一种磁盘阵列历史掉盘记录的保存方法 | |
CN104636082B (zh) | 磁盘阵列raid的控制方法及装置 | |
CN106250278A (zh) | 一种一键执行的磁盘阵列数据恢复方法 | |
US7600151B2 (en) | RAID capacity expansion interruption recovery handling method and system | |
CN106933707B (zh) | 基于raid技术的数据存储设备数据恢复方法及系统 | |
CN102419995A (zh) | 信息存取设备及信息存取方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20161221 |
|
RJ01 | Rejection of invention patent application after publication |