一种磁盘节能的设置方法及装置的制造方法

文档序号:9505956阅读:417来源:国知局
一种磁盘节能的设置方法及装置的制造方法
【技术领域】
[0001]本发明涉及磁盘阵列存储节能领域,更具体地说,涉及一种磁盘节能的设置方法及装置。
【背景技术】
[0002]随着信息技术的飞速发展,数据存储的需求也在快速增加。磁盘阵列在数据存储方面有很高的性能和可靠性,但是磁盘阵列也带来非常大的能耗。磁盘是阵列中最主要能耗之一,针对磁盘的节能对整个磁盘阵列节能意义重大。目前对于磁盘的节能,主要是在磁盘没有读写请求时,将磁盘处于休眠状态。当有读写请求时,将磁盘唤醒。但实际应用中,即使在业务压力很小时,长时间无读写请求的场景也很少,磁盘也无法处于休眠状态,即便磁盘进入休眠状态也会很快被唤醒,节能效果有限。
[0003]因此,如何增强磁盘的节能效果是现在需要解决的问题。

【发明内容】

[0004]本发明的目的在于提供一种磁盘节能的设置方法及装置,以增强磁盘的节能效果Ο
[0005]为实现上述目的,本发明实施例提供了如下技术方案:
[0006]一种磁盘节能的设置方法,包括:
[0007]分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,并设定业务压力值小于预设阈值的时间段为磁盘的空闲状态;
[0008]按照每个磁盘在空闲状态的时间段,设定磁盘休眠时间表;
[0009]按照所述磁盘休眠时间表中的每个磁盘处于空闲状态的时间段,控制相应的磁盘进行休眠。
[0010]优选的,还包括:
[0011]接收向第一冗余磁盘组写入数据的写指令;
[0012]判断所述第一冗余磁盘组是否存在休眠的磁盘;若是,则将待写入的数据保存至缓存区。
[0013]优选的,所述将待写入的数据保存至缓存区之前,还包括:
[0014]判断所述待写入的数据是否大于所述缓存区的水位阈值;若是,则唤醒在休眠中的缓存数据量最大的磁盘;若否,则继续执行所述将待写入的数据保存至缓存区的步骤。
[0015]优选的,还包括:
[0016]接收从第二冗余磁盘组读取数据的读指令;
[0017]判断所述缓存区中是否存在待读取的数据;若是,则从所述缓存区中读取;若否,则通过所述第二冗余磁盘组降级读取。
[0018]优选的,所述将待写入的数据保存至缓存区之后,包括:
[0019]若所述第一冗余磁盘组处于非空闲状态的时间段,则唤醒所述第一冗余磁盘组中休眠的磁盘,并将所述缓存区中的数据写入所述第一冗余磁盘组。
[0020]一种磁盘节能的设置装置,包括:
[0021]业务压力统计模块,用于分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,并设定业务压力值小于预设阈值的时间段为磁盘的空闲状态;按照每个磁盘在空闲状态的时间段,设定磁盘休眠时间表;
[0022]磁盘休眠模块,用于按照所述磁盘休眠时间表中的每个磁盘处于空闲状态的时间段,控制相应的磁盘进行休眠。
[0023]优选的,还包括:
[0024]读写处理模块,所述读写处理模块包括:
[0025]第一接收单元,用于接收向第一冗余磁盘组写入数据的写指令;
[0026]第一判断单元,用于判断所述第一冗余磁盘组是否存在休眠的磁盘;若是,则触发磁盘写入单元;
[0027]所述磁盘写入单元,用于将待写入的数据保存至缓存区。
[0028]优选的,所述读写处理模块还包括:
[0029]第二判断单元,用于判断所述待写入的数据是否大于所述缓存区的水位阈值;若是,则触发磁盘唤醒模块;若否,则触发所述磁盘写入单元将待写入的数据保存至缓存区;
[0030]所述磁盘唤醒模块,用于唤醒在休眠中的缓存数据量最大的磁盘。
[0031]优选的,所述读写处理模块还包括:
[0032]第二接收单元,用于接收从第二冗余磁盘组读取数据的读指令;
[0033]第三判断单元,用于判断所述缓存区中是否存在待读取的数据;若是,则触发第一磁盘读取单元;若否,则触发第二磁盘读取单元;
[0034]所述第一磁盘读取单元,用于从所述缓存区中读取相应的数据;
[0035]所述第二磁盘读取单元,用于通过所述第二冗余磁盘组降级读取相应的数据。
[0036]优选的,所述磁盘唤醒模块具体用于:
[0037]若所述第一冗余磁盘组处于非空闲状态的时间段,则唤醒所述第一冗余磁盘组中休眠的磁盘,并将所述缓存区中的数据写入所述第一冗余磁盘组。
[0038]通过以上方案可知,本发明实施例提供的一种磁盘节能的设置方法及装置,包括:分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,并设定业务压力值小于预设阈值的时间段为磁盘的空闲状态;按照每个磁盘在空闲状态的时间段,设定磁盘休眠时间表;按照所述磁盘休眠时间表中的每个磁盘处于空闲状态的时间段,控制相应的磁盘进行休眠,可见,本实施例提供的这种节能设置方式,能够在业务压力较小的时间段内,将磁盘阵列中的多个磁盘进行休眠,达到节能的效果。
【附图说明】
[0039]为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
[0040]图1为本发明实施例公开的一种磁盘节能的设置方法流程示意图;
[0041]图2为本发明实施例公开的另一种磁盘节能的设置方法流程示意图;
[0042]图3为本发明实施例公开的另一种磁盘节能的设置方法流程示意图;
[0043]图4为本发明实施例公开的磁盘休眠状态下的读写请求示意图;
[0044]图5为本发明实施例公开的一种磁盘节能的设置装置结构示意图;
[0045]图6为本发明实施例公开的另一种磁盘节能的设置装置结构示意图。
【具体实施方式】
[0046]下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
[0047]本发明实施例公开了一种磁盘节能的设置方法及装置,以增强磁盘的节能效果。
[0048]参见图1,本发明实施例提供的一种磁盘节能的设置方法,包括:
[0049]S101、分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,并设定业务压力值小于预设阈值的时间段为磁盘的空闲状态;
[0050]具体的,在磁盘阵列中经常使用RAID技术实现冗余设计,因此在本实施例中结合RAID的冗余性对节能设置方法进行描述。但需要说明的是,本实施例并不仅限于使用RAID技术管理磁盘的冗余性的场景,其他冗余技术也可适用。
[0051]具体的,在本实施例中,分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,是通过分析冗余磁盘组的10空闲时间段,即对发往每个冗余磁盘组的10进行计数,统计出单位时间内,对于每个冗余磁盘组的10总数,找出10总数小于设定阈值的时间段,以此作为磁盘可休眠的时间段,即单位时间内10总数小于设定阈值的时间段为磁盘的空闲状态。
[0052]S102、按照每个磁盘在空闲状态的时间段,设定磁盘休眠时间表;
[0053]具体的,在本实施例中,对不同时间段的业务读写压力情况进行统计分析,得出每个时间周期内的业务压力情况,因此,由于每个磁盘组的空闲时间段不同,可以根据此特性设定一个休眠时间表。
[0054]S103、按照所述磁盘休眠时间表中的每个磁盘处于空闲状态的时间段,控制相应的磁盘进行休眠。
[0055]具体的,在S102中已经设定了一个休眠时间表,即在业务压力低于设定阈值的时间周期内,认为当前处于空闲状态,则可以按照这个时间,选出可以进行休眠磁盘,并在空闲状态的时间段对磁盘进行磁盘休眠。
[0056]具体的,由于空闲状态即为10空闲时间段,因此本实施例首先根据冗余磁盘级别和冗余磁盘组状态,找到存在冗余的冗余磁盘组,即RAID组。分析出该RAID组的空闲10时间段,即在此空闲时间段,该RAID组可进入休眠状态。并且可以不断的根据磁盘休眠时间表,将存在空闲状态的RAID组中的磁盘进行休眠.
[0057]参见图2,本发明实施例提供的另一种磁盘节能的设置方法,包括:
[0058]S201、分析每个冗余磁盘组中的每个磁盘在不同时间段的业务压力值,并设定业务压力值小于预设阈值的时间段为磁盘的空闲状态;
[0059]S202、按照每个磁盘在空闲状态的时间段,设定磁盘休眠时间表;
[0060]S203、按照所述磁盘休眠时间表中的每个磁盘处于空闲状态的时间段,控制相应的磁盘进行休眠;
[0061]S204、接收向第一冗余磁盘组写入数据的写指令;
[0062]S205、判断所述第一冗余磁盘组是否存在休眠的磁盘;若是,则将待写入的数据保存至缓存区。
[0063]优选的,所述将待写入的数据保存至缓存区之前,还包括:
[0064]判断所述待写入的数据是否大于所述缓存区的水位阈值;若是,则唤醒在休眠中的缓存数据量最大的磁盘;若否,则继续执行所述将待写入的数据保存至缓存区的步骤。
[0065]具体的,冗余磁盘组中存在休眠的磁盘时,当接收到对这个磁盘的写请求时,会首先判断写入的数据是否大于缓存区的水平阈值,当大于时,则表示可能存在缓存空间不足的风险,此时通知唤醒缓存数据量最大的磁盘,将数据写入;当写入的数据是小于缓存区的水平阈值时,则将数据写入缓存区。等到该冗余磁盘组唤醒后,将缓存区中的数
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1