CN101382874A - 一种raid5磁盘阵列中写入数据的方法和装置 - Google Patents

一种raid5磁盘阵列中写入数据的方法和装置 Download PDF

Info

Publication number
CN101382874A
CN101382874A CNA2008101725826A CN200810172582A CN101382874A CN 101382874 A CN101382874 A CN 101382874A CN A2008101725826 A CNA2008101725826 A CN A2008101725826A CN 200810172582 A CN200810172582 A CN 200810172582A CN 101382874 A CN101382874 A CN 101382874A
Authority
CN
China
Prior art keywords
data
disks
write
new data
original
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
CNA2008101725826A
Other languages
English (en)
Other versions
CN101382874B (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.)
Huawei Digital Technologies Chengdu Co Ltd
Original Assignee
Huawei Symantec Technologies 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 Huawei Symantec Technologies Co Ltd filed Critical Huawei Symantec Technologies Co Ltd
Priority to CN2008101725826A priority Critical patent/CN101382874B/zh
Publication of CN101382874A publication Critical patent/CN101382874A/zh
Application granted granted Critical
Publication of CN101382874B publication Critical patent/CN101382874B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明实施例公开了一种RAID5磁盘阵列中写入数据的方法和装置,所述方法包括以下步骤:判断写入新数据的数据盘是否完成格式化;所述判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。本发明的实施例中,在写入数据的数据盘没有完成格式化时,按照大写方式写入数据,即在写入新数据的数据盘中写入新数据,在校验盘中写入根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成的新的校验数据,保证了新的校验数据的正确性,从而实现了在未完成格式化的RAID5磁盘阵列中的数据写入。

Description

一种RAID5磁盘阵列中写入数据的方法和装置
技术领域
本发明涉及通信技术领域,尤其涉及一种RAID5磁盘阵列中写入数据的方法和装置。
背景技术
对于RAID(Redundant Array of Independent Disks,独立冗余磁盘阵列)类型为RAID5的磁盘阵列,在进行数据写入之前必须先对磁盘阵列进行格式化,否则无法写入数据。但随着磁盘阵列的容量不断增加,格式化时间也随之增加,这相当影响了磁盘阵列的利用效率。因此,提出了后台格式化的方式,即主机对磁盘阵列格式化过程中记录格式化过的位置,主机接收到写请求对正在格式化的磁盘阵列进行数据写入前,首先判断需要写入新数据的数据盘是否已完成格式化,如果已经完成格式化,则可按照RAID5的写入方式将数据写入,否则需要等待格式化完成后,再将数据写入。
在实现本发明的过程中,发明人发现现有技术中存在以下缺点:
现有技术中,在需要写入新数据的数据盘完成格式化之前无法写入数据,格式化过程中的数据写入存在延迟。
发明内容
本发明实施例提供了一种RAID5磁盘阵列中写入数据的方法和装置,实现了在未完成格式化的RAID5磁盘阵列中的数据写入。
本发明实施例提供了一种RAID5磁盘阵列中写入数据的方法,包括以下步骤:
判断写入新数据的数据盘是否完成格式化;
所述判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
本发明实施例提供了一种RAID5磁盘阵列中写入数据的装置,包括:
第一判断单元,用于判断写入新数据的数据盘是否完成格式化;
大写单元,用于若所述第一判断单元判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
本发明的实施例中,在写入数据的数据盘没有完成格式化时,按照大写方式写入数据,即在写入新数据的数据盘中写入新数据,在校验盘中写入根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成的新的校验数据,保证了新的校验数据的正确性,从而实现了在未完成格式化的RAID5磁盘阵列中的数据写入。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例中一种写入数据的方法流程图;
图2是本发明实施例中一种写入数据的方法流程图;
图3是本发明实施例中一种写入数据的装置结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供了一种RAID5磁盘阵列中写入数据的方法,如图1所示,包括以下步骤:
步骤101,判断写入新数据的数据盘是否完成格式化。
步骤102,所述判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
其中,按照大写方式在所述写入新数据的数据盘中写入新数据包括:
获得写入新数据的数据盘之外的数据盘中原有的数据;
根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成校验数据,所述校验数据用于在有数据盘失效时进行数据恢复;
将所述校验数据写入校验盘,并将所述新数据写入所述写入新数据的数据盘。
本发明的实施例中,在写入数据的数据盘没有完成格式化时,按照大写方式写入数据,即在写入新数据的数据盘中写入新数据,在校验盘中写入根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成的新的校验数据,保证了新的校验数据的正确性,从而实现了在未完成格式化的RAID5磁盘阵列中的数据写入。
本发明实施例提供了一种写入数据的方法,如图2所示,包括以下步骤:
步骤201,接收写请求。
步骤202,判断磁盘阵列类型。若磁盘阵列为RAID10,则转步骤203;若磁盘阵列为RAID5,则转步骤204。
步骤203,按照RAID10的写入方式在写请求对应磁盘中写入数据,结束数据写入。
RAID10的冗余方式是通过镜像实现的,对镜像而言,每次写操作都与盘上原有数据状态无关,即使原有盘上数据不满足RAID10要求也无所谓,经过新数据写入后,必然会重新满足,所以RAID10可以直接写入数据。
步骤204,判断需要写入新数据的数据盘是否完成格式化,若判断结果为是,则转步骤205;若判断结果为否,则转步骤206。
步骤205,按照读请求数量最少的方式在需要写入新数据的数据盘中写入新数据。
在RAID5中,读请求越少就意味着写性能越高。当需要写入新数据的数据盘的数目大于写入新数据的数据盘之外的数据盘的数目时,采用大写的方式写入数据,即获得写入新数据的数据盘之外的数据盘中原有的数据;根据所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据生成校验数据,即对所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据进行异或运算,得到所述校验数据;将所述校验数据写入校验盘,并将所述新数据写入数据盘。当需要写入新数据的数据盘的数目小于不需写入新数据的数据盘时,则采用小写方式写入数据,即获得需要写入新数据的数据盘中原有的数据和校验盘中原有的校验数据,在原有的校验数据中除去需要写入新数据的数据盘中原有的数据的贡献,然后和新数据一起生成新的校验数据,将新的校验数据写入校验盘,并将新数据写入数据盘。
步骤206,判断写入新数据的数据盘之外的数据盘中是否有盘失效,即判断写入新数据的数据盘之外的数据盘中是否有盘无法进行数据读取和写入,若有磁盘无法读取和写入数据,则认为此盘失效。若判断结果为是,则转步骤207;若判断结果为否,则转步骤208。
步骤207,按照RAID5数据重构方式将失效磁盘的数据恢复。
读取校验盘中原有的校验数据和有效数据盘中原有的数据;对所述校验盘中原有的校验数据和所述有效数据盘中原有的数据进行异或计算,得到失效数据盘的原有数据。这时,可以将失效盘的原有数据缓存在内存中,以便在写入数据时调用。
步骤208,按照大写方式在需要写入新数据的数据盘中写入新数据。
获得写入新数据的数据盘之外的数据盘中原有的数据,如果存在失效磁盘,则需从缓存中读取步骤207获得的失效磁盘中原有数据;将所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据进行异或运算,得到新的校验数据;将新的校验数据写入校验盘,并将所述新数据写入到需要写入新数据的数据盘中。
使用大写方式进行数据写入的原因是大写过程是从需要写入新数据的数据盘之外的数据盘读出原有的数据,与需要写入的新数据一起计算出新的校验数据,然后将新的校验数据存入校验磁盘中替换原有的校验数据,这样得到的新的校验数据是一定满足RAID5的要求的,即后续如果有数据盘失效,可以通过新的校验数据和其他数据盘中的数据恢复失效数据盘中的数据,从而保证数据盘中数据的安全性。
本发明的实施例中,在写入数据的数据盘没有完成格式化时,按照大写方式写入数据,即在写入新数据的数据盘中写入新数据,在校验盘中写入根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成的新的校验数据,保证了新的校验数据的正确性,从而实现了在未完成格式化的RAID5磁盘阵列中的数据写入。
本发明实施例提供了一种RAID5磁盘阵列中写入数据的装置,如图3所示,包括:
第一判断单元301,用于判断写入新数据的数据盘是否完成格式化;
大写单元302,用于若所述第一判断单元301判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
其中,还包括:
第二判断单元303,用于若所述第一判断单元301判断结果为是,判断所述写入新数据的数据盘的数目是否大于所述写入新数据的数据盘之外的数据盘的数目;
小写单元304,用于若所述第二判断单元303判断结果为否,按照小写方式在所述写入新数据的数据盘中写入新数据;
所述大写单元302,还用于若所述第二判断单元303判断结果为是,按照大写方式在所述写入新数据的数据盘中写入新数据。
其中,所述大写单元302包括:
获取子单元3021,用于获得所述写入新数据的数据盘之外的数据盘中原有的数据;
生成子单元3022,用于根据新数据和所述获取子单元3021获取的写入新数据的数据盘之外的数据盘中原有的数据生成校验数据,所述校验数据用于在有数据盘失效时进行数据恢复;
写入子单元3023,用于将所述生成子单元3022生成的校验数据写入校验盘,并将所述新数据写入所述写入新数据的数据盘。
其中,当所述写入新数据的数据盘之外的数据盘中有数据盘失效时,所述获取子单元3021具体用于读取检验盘中原有的校验数据和有效数据盘中原有的数据;对所述检验盘中原有的校验数据和所述有效数据盘中原有的数据进行异或计算,得到失效数据盘中原有的数据。
其中,所述生成子单元3022对所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据进行异或运算,得到所述校验数据。
本发明的实施例中,在写入数据的数据盘没有完成格式化时,按照大写方式写入数据,即在写入新数据的数据盘中写入新数据,在校验盘中写入根据新数据和写入新数据的数据盘之外的数据盘中原有的数据生成的新的校验数据,保证了新的校验数据的正确性,从而实现了在未完成格式化的RAID5磁盘阵列中的数据写入。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到本发明可以通过硬件实现,也可以可借助软件加必要的通用硬件平台的方式来实现,基于这样的理解,本发明的技术方案可以以软件产品的形式体现出来,该软件产品可以存储在一个非易失性存储介质(可以是CD-ROM,U盘,移动硬盘等)中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
总之,以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (11)

1、一种RAID5磁盘阵列中写入数据的方法,其特征在于,包括以下步骤:
判断写入新数据的数据盘是否完成格式化;
所述判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
2、如权利要求1所述的方法,其特征在于,所述判断结果为是,按照读请求最少的方式在所述写入新数据的数据盘中写入新数据。
3、如权利要求2所述的方法,其特征在于,所述按照读请求最少的方式在所述写入新数据的数据盘中写入新数据包括:
所述写入新数据的数据盘的数目大于所述写入新数据的数据盘之外的数据盘的数目,按照大写方式在所述写入新数据的数据盘中写入新数据;或
所述写入新数据的数据盘的数目不大于所述写入新数据的数据盘之外的数据盘的数目,按照小写方式在所述写入新数据的数据盘中写入新数据。
4、如权利要求1或3所述的方法,其特征在于,所述按照大写方式在所述写入新数据的数据盘中写入新数据包括:
获得所述写入新数据的数据盘之外的数据盘中原有的数据;
根据新数据和所述写入新数据的数据盘之外的数据盘中原有的数据生成校验数据,所述校验数据用于在有数据盘失效时进行数据恢复;
将所述校验数据写入校验盘,并将所述新数据写入所述写入新数据的数据盘。
5、如权利要求4所述的方法,其特征在于,当所述写入新数据的数据盘之外的数据盘中有数据盘失效时,所述获得所述写入新数据的数据盘之外的数据盘中原有的数据包括:
读取校验盘中原有的校验数据和有效数据盘中原有的数据;
对所述校验盘中原有的校验数据和所述有效数据盘中原有的数据进行异或计算,得到失效数据盘中原有的数据。
6、如权利要求4所述的方法,其特征在于,所述根据新数据和所述写入新数据的数据盘之外的数据盘中原有的数据生成校验数据包括:
对所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据进行异或运算,得到所述校验数据。
7、一种RAID5磁盘阵列中写入数据的装置,其特征在于,包括:
第一判断单元,用于判断写入新数据的数据盘是否完成格式化;
大写单元,用于若所述第一判断单元判断结果为否,按照大写方式在所述写入新数据的数据盘中写入新数据。
8、如权利要求7所述的装置,其特征在于,还包括:
第二判断单元,用于若所述第一判断单元判断结果为是,判断所述写入新数据的数据盘的数目是否大于所述写入新数据的数据盘之外的数据盘的数目;
小写单元,用于若所述第二判断单元判断结果为否,按照小写方式在所述写入新数据的数据盘中写入新数据;
所述大写单元,还用于若所述第二判断单元判断结果为是,按照大写方式在所述写入新数据的数据盘中写入新数据。
9、如权利要求7或8所述的装置,其特征在于,所述大写单元包括:
获取子单元,用于获得所述写入新数据的数据盘之外的数据盘中原有的数据;
生成子单元,用于根据新数据和所述获取子单元获取的写入新数据的数据盘之外的数据盘中原有的数据生成校验数据,所述校验数据用于在有数据盘失效时进行数据恢复;
写入子单元,用于将所述生成子单元生成的校验数据写入校验盘,并将所述新数据写入所述写入新数据的数据盘。
10、如权利要求9所述的装置,其特征在于,当所述写入新数据的数据盘之外的数据盘中有数据盘失效时,所述获取子单元获得所述写入新数据的数据盘之外的失效数据盘中原有的数据包括:
读取校验盘中原有的校验数据和有效数据盘中原有的数据;
对所述校验盘中原有的校验数据和所述有效数据盘中原有的数据进行异或计算,得到失效数据盘中原有的数据。
11、如权利要求9所述的装置,其特征在于,所述生成子单元对所述新数据和所述写入新数据的数据盘之外的数据盘中原有的数据进行异或运算,得到所述校验数据。
CN2008101725826A 2008-10-30 2008-10-30 一种raid5磁盘阵列中写入数据的方法和装置 Expired - Fee Related CN101382874B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2008101725826A CN101382874B (zh) 2008-10-30 2008-10-30 一种raid5磁盘阵列中写入数据的方法和装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2008101725826A CN101382874B (zh) 2008-10-30 2008-10-30 一种raid5磁盘阵列中写入数据的方法和装置

Publications (2)

Publication Number Publication Date
CN101382874A true CN101382874A (zh) 2009-03-11
CN101382874B CN101382874B (zh) 2010-08-11

Family

ID=40462734

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2008101725826A Expired - Fee Related CN101382874B (zh) 2008-10-30 2008-10-30 一种raid5磁盘阵列中写入数据的方法和装置

Country Status (1)

Country Link
CN (1) CN101382874B (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294957A (zh) * 2013-05-06 2013-09-11 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN109144430A (zh) * 2018-09-29 2019-01-04 福建易视科技有限公司 Raid5快速同步方法
CN109388513A (zh) * 2017-08-09 2019-02-26 华为技术有限公司 数据校验的方法、阵列控制器及硬盘
CN114995771A (zh) * 2022-08-02 2022-09-02 苏州浪潮智能科技有限公司 独立磁盘冗余阵列格式化调度方法、装置、设备及介质

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103294957A (zh) * 2013-05-06 2013-09-11 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN103294957B (zh) * 2013-05-06 2015-10-28 北京赛思信安技术有限公司 支持重复数据删除文件系统中数据更新时的数据保护方法
CN109388513A (zh) * 2017-08-09 2019-02-26 华为技术有限公司 数据校验的方法、阵列控制器及硬盘
CN109388513B (zh) * 2017-08-09 2020-11-03 华为技术有限公司 数据校验的方法、阵列控制器及硬盘
CN109144430A (zh) * 2018-09-29 2019-01-04 福建易视科技有限公司 Raid5快速同步方法
CN114995771A (zh) * 2022-08-02 2022-09-02 苏州浪潮智能科技有限公司 独立磁盘冗余阵列格式化调度方法、装置、设备及介质
CN114995771B (zh) * 2022-08-02 2022-12-13 苏州浪潮智能科技有限公司 独立磁盘冗余阵列格式化调度方法、装置、设备及介质

Also Published As

Publication number Publication date
CN101382874B (zh) 2010-08-11

Similar Documents

Publication Publication Date Title
US9442802B2 (en) Data access methods and storage subsystems thereof
US9798620B2 (en) Systems and methods for non-blocking solid-state memory
US5883909A (en) Method and apparatus for reducing data transfers across a memory bus of a disk array controller
US7529982B1 (en) Method and an apparatus for aggressively detecting media errors on storage devices with negligible performance impact
CN107346210B (zh) 硬盘数据擦除方法、服务器及系统
CN101916173B (zh) 一种基于raid的数据读写方法及其系统
US20090271659A1 (en) Raid rebuild using file system and block list
US20090198885A1 (en) System and methods for host software stripe management in a striped storage subsystem
US7694171B2 (en) Raid5 error recovery logic
TW201229757A (en) Stripe-based non-volatile multilevel memory operation
US7818524B2 (en) Data migration systems and methods for independent storage device expansion and adaptation
CN101866307A (zh) 一种基于镜像技术的数据存储方法及装置
CN110187830A (zh) 一种加速磁盘阵列重建的方法及系统
CN102207895A (zh) 一种独立磁盘冗余阵列数据重建方法和装置
CN108733326B (zh) 一种磁盘处理方法及装置
CN101382874B (zh) 一种raid5磁盘阵列中写入数据的方法和装置
CN101520793A (zh) 一种流媒体文件存储和读取方法、系统及流媒体服务器
WO2014101375A1 (zh) 固态存储系统、装置及数据写入方法
WO2024113685A1 (zh) 一种raid阵列的数据恢复方法及相关装置
CN102226892A (zh) 一种磁盘容错处理方法及设备
US20030236943A1 (en) Method and systems for flyby raid parity generation
CN101794246B (zh) 备份存储系统、备份系统及数据备份方法和恢复方法
US20030163757A1 (en) RAID subsystem and data input/output and recovery method in disk error mode
CN106933707B (zh) 基于raid技术的数据存储设备数据恢复方法及系统
CN106371950A (zh) 一种实现raid级别转换的方法及装置

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
C56 Change in the name or address of the patentee

Owner name: HUAWEI DIGITAL TECHNOLOGY (CHENGDU) CO., LTD.

Free format text: FORMER NAME: CHENGDU HUAWEI SYMANTEC TECHNOLOGIES CO., LTD.

CP01 Change in the name or title of a patent holder

Address after: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee after: Huawei Symantec Technologies Co., Ltd.

Address before: 611731 Chengdu high tech Zone, Sichuan, West Park, Qingshui River

Patentee before: Chengdu Huawei Symantec Technologies Co., Ltd.

CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100811

Termination date: 20181030

CF01 Termination of patent right due to non-payment of annual fee