Raid阵列重建方法及装置的制造方法

文档序号:9727107阅读:373来源:国知局
Raid阵列重建方法及装置的制造方法
【技术领域】
[0001 ] 本发明涉及视频监控存储技术领域,尤其涉及一种RAID(Redundant Arrays ofIndependent Disks,独立磁盘冗余阵列)阵列重建方法及装置。
【背景技术】
[0002]RAID5技术是一种块交叉分布式奇偶校验磁盘阵列,以条带为单位进行数据的分割与重构,使用奇偶校验信息来保存冗余信息。RAID5将数据和相对应的奇偶校验信息分别存储于不同的磁盘中,其中任意N-1块磁盘上都存储完整的数据,其中N为RAID5阵列的磁盘数,因此RAID5能够容忍阵列中任意一块磁盘损坏而不丢失数据。在RAID5阵列中某块磁盘损坏后,如果磁盘阵列中配置热备盘,可将热备盘作为重建盘加入RAID5阵列,然后对重建盘逐个条带进行重建。在视频监控存储技术领域,RAID5在重建的过程中,还有大量的视频数据被写入磁盘阵列,或者磁盘阵列中的视频数据被执行回放等读取操作。如何在不影响视频数据写入、读取等正常存储业务的前提下,提高RAID5阵列重建速度,是视频监控存储技术领域的一个问题。
[0003]现有技术中,可采用多个内核线程分别进行正常磁盘数据读取、异或计算、计算后的磁盘数据写入等操作,即存储设备使用更多的CPU(Central Processing Unit,中央处理器)资源、磁盘10 (Input/Output,输入/输出)处理资源等对重建盘进行重建,从而提高重建速度。现有技术需要占用存储设备较多的CPU资源、磁盘10处理资源进行RAID5阵列重建,可影响到视频监控存储系统中外部视频数据写入等正常存储业务的资源分配,导致外部视频数据写入丢失等问题。

【发明内容】

[0004]本发明提供一种RAID阵列重建方法及装置,以解决现有技术中在RAID5阵列重建过程中,影响正常存储业务的资源分配,导致外部视频数据写入丢失等问题。
[0005]根据本发明实施例的第一方面,提供一种RAID阵列重建方法,所述方法应用于存储设备上,所述存储设备上包括至少一个RAID阵列,所述RAID阵列包括多个分区,所述方法包括:
[0006]当所述RAID阵列启动重建盘的重建时,获取每个分区的阵列起始地址和分区大小,所述分区为存储资源区间或者非存储资源区间,其中,每个存储资源区间由一个外部视频源写入数据;
[0007]如果在重建所述重建盘时,所述存储资源区间有视频数据写入,则根据所述存储资源区间对应的外部视频源第一次写入视频数据的写入位置,确定所述存储资源区间的重建起始位置;
[0008]按照所述重建盘的从低地址到高地址的方向选择存储资源区间,使用所述视频数据和重建流从两个方向对所述重建盘的每个存储资源区间逐个进行重建。
[0009]根据本发明实施例的第二方面,提供一种RAID阵列重建装置,所述装置应用于存储设备上,所述存储设备上包括至少一个RAID阵列,所述RAID阵列包括多个分区,所述装置包括:
[0010]获取单元,用于所述RAID阵列启动重建盘的重建时,获取每个分区的阵列起始地址和分区大小,所述分区为存储资源区间或者非存储资源区间,其中,每个存储资源区间由一个外部视频源写入数据;
[0011]确定单元,用于如果在所述重建盘重建时,所述存储资源区间有视频数据写入,则根据所述存储资源区间对应的外部视频源第一次写入视频数据的写入位置,确定所述存储资源区间的重建起始位置;
[0012]重建单元,用于按照所述重建盘的从低地址到高地址的方向选择存储资源区间,使用所述视频数据和重建流从两个方向对所述重建盘的每个存储资源区间逐个进行重建。
[0013]应用本发明实施例,可将存储设备中的RAID5阵列划分为多个存储资源区间和非存储资源区间,这样在重建RAID5阵列的重建盘时,如果存储资源区间有视频数据写入,则可根据存储资源区间对应的外部视频源的当前写入位置,确定存储资源区间的重建起始位置;按照重建盘的从低地址到高地址的方向选择存储资源区间,使用视频数据和重建流从两个方向对重建盘的每个存储资源区间逐个进行重建。本发明解决了现有技术中在RAID5阵列重建过程中,影响正常存储业务的资源分配,导致外部视频数据写入丢失等问题,而且本发明的外部视频数据和重建流的双向重建方案,大大提高了RAID阵列的重建速度。
【附图说明】
[0014]此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
[0015]图1为本发明一种实施方式基于多个存储资源区间的阵列区间模型图;
[0016]图2为本发明一种实施方式中RAID阵列重建方法流程图;
[0017]图3为本发明一种实施方式中单个存储资源区间的重建模式示意图;
[0018]图4为本发明一种实施方式中RAID阵列重建装置所在存储设备的一种硬件结构图;
[0019]图5为本发明一种实施方式中RAID阵列重建装置框图。
【具体实施方式】
[0020]为便于对本发明的理解,下面将结合附图以具体实施例做进一步的解释说明,实施例并不构成对本发明保护范围的限定。
[0021]本发明提供的RAID阵列重建技术方案应用于RAID5阵列的重建,而且主要应用于视频监控领域的存储系统中。参见图1,为本发明一种实施方式基于多个存储资源区间的阵列区间模型图:本发明技术方案中,一个RAID5磁盘阵列的存储空间被划分为非存储资源区间和多个存储资源区间,每个存储资源区间都被分配给某个外部视频源,外部视频源按照一定码流大小向存储资源区间写入视频数据,视频数据写入方向从阵列空间来看,是从阵列低地址到高地址的方向;而非存储资源区间一般是存储设备为了某些异常情况预留的存储空间,例如可用来存储某些备份的视频数据等。
[0022]参见图2,为本发明一种实施方式中RAID阵列重建方法流程图:
[0023]步骤201:存储设备的内核态RAID层通过Netlink机制向用户态的业务层发送配置获取命令,配置获取命令中携带有阵列标识信息。
[0024]当内核态RAID层确定需要进行重建时,可将RAID5阵列由正常模式进入降级模式,然后向用户态的业务层发送配置获取命令,该配置获取命令用于向用户态的业务层请求获取RAID5阵列的分区信息。
[0025]由于存储设备中可能设置了多个RAID阵列,因此配置获取命令中可携带阵列标识信息,用以标识要重建的阵列。。
[0026]步骤202:用户态的业务层根据配置获取命令,获取阵列的每个分区的分区信息。
[0027]其中,每个分区的分区信息包括分区个数、每个分区的阵列起始地址和分区大小,以及每个存储资源区间的索引区所对应的阵列起始地址和索引区大小。
[0028]在一种可能的实现方式中,用户态的业务层在接收到配置获取命令后,即可根据阵列标识信息,查询数据库,获得阵列的分区个数,其中,该数据库可为用户态的业务层为每个阵列建立的,用来存储每个阵列的相关信息;然后使用dmsetup命令获取每
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1