一种基于raid的磁盘重构方法及相关设备的制造方法_3

文档序号:8223303阅读:来源:国知局
块的重构,例如,对磁盘进行遍历后,获取到第一重构优先级的磁盘分块进行重构,第一重构优先级的磁盘分块重构完成之后,对重构优先级仅次于第一重构优先级的第二重构优先级对应的磁盘分块进行重构,依次对不同重构优先级的磁盘分块进行重构,使得存储业务优先级高业务的磁盘优先进行重构,避免重要数据丢失,提高系统性能和可靠性。
[0079]需要说明的是,作为一种优选的方案,对磁盘分块进行重构操作之前,可以对磁盘分块进行检测,判断该磁盘分块是否写入过数据,即判断该磁盘分块中是否存储过业务的数据,如果该磁盘分块未写入过数据,即没有存储过业务的数据,则不需要对这个磁盘分块进行重构,遍历寻找下一个重构优先级的磁盘分块进行检测,如果这个磁盘分块写入数据,则可以根据重构优先级进行重构操作,只重构磁盘上有写过数据的磁盘分块,如果该区域没有写过数据,则不进行重构,这样可以大大提高磁盘分块重构的速度和效率。
[0080]S205、对第二重构优先级的磁盘分块进行重构。
[0081]对第二重构优先级的磁盘分块也可以进行是否写入数据的检测,当判断第二重构优先级的磁盘分块写入过数据,则继续操作,完成对该磁盘分块的重构操作,如果判断该磁盘分块未写入过数据,则不对这个磁盘分款进行重构,继续遍历磁盘中的所有磁盘分块,按照重构优先级的顺序对其他磁盘分块进行重构操作。
[0082]需要说明的是,如何对磁盘分块进行检测是否被写入过数据的方法,本领域普通技术人员应当了解,不进行赘述。
[0083]针对步骤S203中,具有相同业务优先级的业务可以有多个,即有相同重构优先级的磁盘分块可以为多个,当出现业务优先级相同的磁盘分块时候,如何确定磁盘分块的重构优先级,本发明还提供一种实施例,下面具体介绍。
[0084]获取每个磁盘分块的数据访问次数,当磁盘分块中存储业务的业务优先级相同时,确定数据访问次数大的磁盘分块的重构优先级高于数据访问次数小的磁盘分块的重构优先级。
[0085]作为一种优选的方案,增加一个重构优先级调节机制,数据访问次数高的数据可以将该磁盘分块的重构优先级调高,长时间未访问的数据,如果本身优先级较高,可以不更改该磁盘分块的重构优先级,如果该磁盘分块的重构优先级适中,可以降低该磁盘分块的优先级,通过这个调节机制,可以灵活的调整磁盘分块的重构优先级,将数据访问次数多的磁盘分块优先进行重构。
[0086]为方便说明,下面以两个磁盘分块具有相同的业务优先级的业务说明,例如,磁盘分块A和磁盘分块B存储这相同业务优先级的业务,这时通过获取磁盘分块A和磁盘分块B的数据访问次数做进一步判断,通过检测发现磁盘分块A的数据访问次数多于磁盘分块B的数据访问次数,则确定磁盘分块A的重构优先级高于磁盘分块B的重构优先级,解决了当出现业务优先级相同时重构优先级如何确定的问题,提高了对磁盘重构操作时候的适应性,使得操作过程更灵活。
[0087]对于如何获取磁盘分块的数据访问次数,可以采用在检测所述磁盘分块被访问时将该磁盘分块的数据访问次数加1,然后再统计各个磁盘分块的数据访问次数,当出现存储业务的业务优先级相同的磁盘分块,利用数据访问次数进行确定该磁盘分块的重构优先级,对于磁盘分块的数据访问次数的获取方法也可以有其他的方法,在此不进行限定。
[0088]结合图3所示,上文介绍了基于RAID的磁盘重构方法,针对上述方对应提出了基于RAID的磁盘重构系统,下面针对该系统进行介绍。
[0089]本发明提供的基于RAID的磁盘重构系统的一种实施例,所述磁盘包括多个磁盘分块,所述系统包括:
[0090]配置单元301,用于配置需要存放在磁盘分块中业务的业务优先级。
[0091]作为一种优选的方案,所述配置单元301还用于配置需要存放在磁盘分块中业务的业务优先级,并将所述业务优先级至少配置为第一优先级和第二优先级,其中,所述第一优先级高于第二优先级。
[0092]存储操作单元302,用于将多个业务分别存储至所述磁盘的多个磁盘分块中,以使得一个磁盘分块对应存储一个业务;
[0093]第一确定单元303,用于根据所述磁盘分块所存储业务的业务优先级确定所述磁盘分块的重构优先级。
[0094]作为一种优选的方案,所述第一确定单元303还用于当所述磁盘分块存储业务的业务优先级为第一优先级时确定所述磁盘分块的重构优先级为第一重构优先级;以及当所述磁盘分块存储业务的业务优先级为第二优先级时确定所述磁盘分块的重构优先级为第二重构优先级,其中,所述第一重构优先级高于所述第二重构优先级。
[0095]重构单元304,用于当磁盘异常时按照重构优先级由高到低的顺序对磁盘分块进行重构。
[0096]作为一种优选的方案,所述重构单元304还用于当磁盘异常时对第一重构优先级的磁盘分块进行重构;以及当第一重构优先级的磁盘分块重构完成对第二重构优先级的磁盘分块进行重构。
[0097]作为一种优选的方案,所述系统还包括:
[0098]获取单元305,用于获取每个磁盘分块的数据访问次数,
[0099]第二确定单元306,用于当磁盘分块中存储业务的业务优先级相同时确定数据访问次数大的磁盘分块的重构优先级高于数据访问次数小的磁盘分块的重构优先级。
[0100]访问次数记录单元307,用于检测所述磁盘分块被访问时将该磁盘分块的数据访问次数加I。
[0101]本发明提供的一种基于RAID的磁盘重构系统,预先配置业务与业务优先级的关系,将磁盘分块按照所存放的业务对应的业务优先级进行重构,业务优先级高的业务所在磁盘分块优先进行重构,然后按照磁盘分块的重构优先级由高到低的顺序进行重构,优先保证重要业务的数据所在磁盘分块重构,避免业务的数据丢失,提高系统性能,保证了系统的可靠性。
[0102]结合图4所示,本发明还提供一种存储控制器,用于实现主机与磁盘之间的数据交换控制,所述磁盘包括多个磁盘分块,所述存储控制器的一种实施例包括:
[0103]缓存单元401,用于主机向磁盘存储数据时进行数据缓存,主机向磁盘保存数据时,可以将数据暂时存放在缓存单元中,缓存单元再将数据以合适的方式存储至磁盘中,这里的合适的方式可以为对时间要求降低,主机快速将数据保存在缓存单元中,可以实现主机的数据快速保存。
[0104]业务优先级统计单元402,用于统计每个磁盘分块中业务的业务优先级,其中,所述业务优先级为预先根据业务的类型进行配置。
[0105]业务与业务优先级的配置方法,与上文中描述的过程相同,此处不进行赘述,利用业务优先级确定磁盘分块的重构优先级。
[0106]RAID处理单元403,用于在磁盘故障时根据所述业务优先级统计单元402的第一统计结果按照业务优先级由高到低的顺序对磁盘分块进行重构。
[0107]RAID处理单元403通过遍历磁盘中的每个磁盘分块,按照业务优先级统计单元402的统计结果,对业务优先级高的磁盘分块优先进行重构,然后再按照业务优先级由高到底的顺序将对磁盘分块进行重构。
[0108]需要说明的是,在重构过程中,当检测到某个磁盘分块未写入过数据,则跳过该磁盘分块,对未写入过数据的磁盘分块不进行重构,可以提高重构的速度和效率。
[0109]优选的,所述RAID处理单元403还用于当磁盘分块存储业务的业务优先级相同时按照数据访问次数由高到低的顺序对所述磁盘分块进行重构。
[0110]优选的,数据访问次数统计单元404,用于统计每个磁盘分块的数据访问次数,当检测到磁盘分块被访问一次则将该磁盘分块的数据访问次数加I,以记录该磁盘分块的数据访问次数。
[0111]当然,所述存储控制器还包括其他单元,例如实现运算处理的处理器(图中未示出),用于传输数据的总线(图中未示出),属于存储控制器的常规设计,在此不进行赘述。
[0112]本发明提供一种存储控制器,预先配置业务与业务优先级的关系,将磁盘分块按照所存放的业务对应的业务优先级进行重构,业务优先级高的业务所在磁盘分块优先进行重构,然后按照磁盘分块的重构优先级由高到低的顺序进行重构,优先保证重要
...
当前第3页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1