一种磁盘阵列RAID重建方法及装置制造方法及图纸

技术编号:12814461 阅读:177 留言:0更新日期:2016-02-05 14:38
本申请涉及计算机技术领域,尤其涉及一种磁盘阵列RAID重建方法及装置,用以解决现有技术中存在的当既需要新硬盘重建,又需要大量读或写数据操作时,新硬盘重建速度非常慢而导致系统可靠性降低的技术问题,包括:确定RAID中需要进行操作的条带以及确定RAID中重建盘在条带中对应的重建块,若确定所述条带的状态为未重建,则根据需要进行操作的条带对应的数据和/或根据条带在RAID中其他硬盘上的正常块对应的数据,确定实际写入的数据,然后将确定的所述实际写入的数据写入到所述条带中。该方法,在对RAID中的条带进行数据操作的同时,就可完成对该条带中重建盘的重建,因而节约了重建盘的重建时间,提高了系统的可靠性。

【技术实现步骤摘要】

本申请涉及计算机
,尤其涉及一种磁盘阵列RAID重建方法及装置
技术介绍
RAID (Redundant Arrays of Independent Disks,磁盘阵列)表不“独立磁盘构成的具有冗余能力的阵列”,Stripe(条带)是把连续的数据分割成相同大小的数据块,把每段数据块分别写入到RAID中的不同磁盘上的方法。当RAID中的硬盘损坏时,则需要更换新的硬盘,当更换硬盘后需要对新的硬盘中的数据块进行重建,在新硬盘进行数据重建的过程中,可能又需要对磁盘阵列进行写数据或读数据操作,因此如何处理新硬盘数据重建与对磁盘阵列进行写数据或读数据操作之间的关系,成为了一个很重要的技术问题。现有技术中,当对新硬盘进行数据重建时,若有对磁盘阵列进行写数据或读数据操作,一般会给与读或写数据操作更高的优先级,因此会先处理读或写数据操作,等系统资源空闲时再进行新硬盘的重建,因而导致新硬盘的重建的速度非常慢,尤其是在有大量数据进行读出或者写入的场景下,例如监控视频存储,新硬盘重建的速度更是下降的非常厉害,新硬盘的重建时间非常长,因而导致RAID系统的数据无法得到及时更新,降低了重建速度,以及降低了系统的可靠性。综上所述,现有技术中存在当既需要新硬盘的重建,又需要大量的读出数据或者写入数据操作时,新硬盘重建速度非常慢而导致系统可靠性降低的问题。
技术实现思路
本申请提供一种磁盘阵列RAID重建方法及装置,用以解决现有技术中存在的当既需要新硬盘的重建,又需要大量的读出数据或者写入数据操作时,新硬盘重建速度非常慢而导致系统可靠性降低的技术问题。—方面,本申请实施例提供一种磁盘阵列RAID重建方法,包括:在确定需要对RAID中的条带进行写入操作或读出操作后,若所述条带的状态为未重建,则根据需要进行操作的条带对应的数据和/或根据所述条带在所述RAID中正常块对应的数据,确定实际写入的数据;将确定的所述实际写入的数据写入到所述条带中。可选地,需要对RAID中的条带进行写入操作且写入操作为满写操作;所述根据需要进行操作的条带对应的数据,确定实际写入的数据,包括:根据需要写入所述条带的数据,确定所述条带中校验块对应的数据;将所述校验块对应的数据以及需要写入所述条带的数据,确定为实际写入的数据。可选地,需要对RAID中的条带进行写入操作且写入操作为非满写操作;所述根据需要进行操作的条带对应的数据和根据所述条带在所述RAID中正常块对应的数据,包括:根据需要写入所述条带的数据和所述条带在所述RAID中正常块对应的数据,确定所述条带中校验块对应的数据;根据所述校验块对应的数据以及需要写入所述条带的数据,确定实际写入的数据。可选地,所述根据需要写入所述条带的数据和所述条带在所述RAID中正常块对应的数据,确定所述条带中校验块对应的数据,包括:若所述条带包括的重建块为校验块,则确定所述条带上的第一覆盖数据,所述第一覆盖数据为所述条带上与所述非满写操作对应的位置上的数据;根据所述第一覆盖数据,确定所述条带上的第一目标数据,其中,所述第一目标数据为所述RAID中正常块对应的数据除所述第一覆盖数据之外的所有数据;根据需要写入所述条带的数据及所述第一目标数据,确定所述重建块对应的数据;根据所述校验块对应的数据以及需要写入所述条带的数据,确定实际写入的数据,包括:将所述重建块对应的数据以及所述需要写入所述条带的数据确定为实际写入的数据。可选地,所述根据需要写入所述条带的数据和所述条带在所述RAID中正常块对应的数据,确定所述条带中校验块对应的数据,包括:若所述条带包括的重建块为数据块,则根据所述条带上目标硬盘对应的数据,确定所述重建块对应的数据,所述目标硬盘为RAID中除所述重建块对应的重建盘之外的所有硬盘;根据所述非满写操作,确定所述条带上的第二覆盖数据,所述第二覆盖数据为所述条带上与所述非满写操作对应的位置上的数据;根据所述第二覆盖数据,确定所述条带上的第二目标数据,其中,所述第二目标数据为所述RAID中正常块对应的数据除所述第二覆盖数据和校验块数据之外的所有数据;根据需要写入所述条带的数据,所述第二目标数据及所述重建块对应的数据,确定所述校验块对应的数据;根据所述校验块对应的数据以及需要写入所述条带的数据,确定实际写入的数据,包括:将所述重建块对应的数据,所述校验块对应的数据以及需要写入所述条带的数据确定为实际写入的数据。可选地,所述操作为读出操作;所述根据所述条带在所述RAID中其他硬盘上的正常块对应的数据,确定实际写入的数据,包括:根据所述条带上目标硬盘对应的数据,确定所述重建块对应的数据,其中所述目标硬盘为RAID中除所述重建块对应的重建盘之外的所有硬盘;将所述重建块对应的数据确定为实际写入的数据;可选地,根据下列方式确定所述条带的状态:根据所述需要进行操作的条带在位图中对应的位的数值,确定所述条带的状态;其中,所述位图中的一位对应一个条带的状态。可选地,将确定的所述实际写入的数据写入到所述条带中之后,还包括:将所述条带在所述位图中对应的位的状态设置为已重建。另一方面,本申请实施例提供的一种磁盘阵列RAID重建装置,包括:确定单元,用于在确定需要对RAID中的条带进行写入操作或读出操作后,若所述条带的状态为未重建,则根据需要进行操作的条带对应的数据和/或根据所述条带在所述RAID中正常块对应的数据,确定实际写入的数据;写入单元,用于将确定的所述实际写入的数据写入到所述条带中。可选地,需要对RAID中的条带进行写入操作且写入操作为满写操作;所述确定单元,具体用于:根据需要写入所述条带的数据,确定所述条带中校验块对应的数据;将所述校验块对应的数据以及需要写入所述条带的数据,确定为实际写入的数据。可选地,需要对RAID中的条带进行写入操作且写入操作为非满写操作;所述确定单元,还用于:根据需要写入所述条带的数据和所述条带在所述RAID中正常块对应的数据,确定所述条带中校验块对应的数据;根据所述校验块对应的数据以及需要写入所述条带的数据,确定实际写入的数据。可选地,所述确定单元,还用于:若所述条带包括的重建块为校验块,则确定所述条带上的第一覆盖数据,所述第一覆盖数据为所述条带上与所述非满写操作对应的位置上的数据;根据所述第一覆盖数据,确定所述条带上的第一目标数据,其中,所述第一目标数据为所述RAID中正常块对应的数据除所述第一覆盖数据之外的所有数据;根据需要写入所述条带的数据及所述第一目标数据,确定所述重建块对应的数据;将所述重建块对应的数据以及所述需要写入所述条带的数据确定为实际写入的数据。可选地,所述确定单元,还用于:若所述条带包括的重建块为数据块,则根据所述条带上目标硬盘对应的数据,确定所述重建块对应的数据,所述目标硬盘为RAID中除所述重建块对应的重建盘之外的所有硬盘;根据所述非满写操作,确定所述条带上的第二覆盖数据,所述第二覆盖数据为所述条带上与所述非满写操作对应的位置上的数据;根据所述第二覆盖数据,确定所述条带上的第二目标数据,其中,所述第二目标数据为所述RAID中正常块对应的数据除所述第二覆盖数据和校验块数据之外的所有数据;根据需要写入所述条带的数据,所述第二目标数据及所述重建块对应的数据,确定所述校验块对本文档来自技高网...

【技术保护点】
一种磁盘阵列RAID重建方法,其特征在于,包括:在确定需要对RAID中的条带进行写入操作或读出操作后,若所述条带的状态为未重建,则根据需要进行操作的条带对应的数据和/或根据所述条带在所述RAID中正常块对应的数据,确定实际写入的数据;将确定的所述实际写入的数据写入到所述条带中。

【技术特征摘要】

【专利技术属性】
技术研发人员:罗心范伟云王欢陈立力
申请(专利权)人:浙江大华技术股份有限公司
类型:发明
国别省市:浙江;33

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1