一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

存储系统的电源管理方法、装置、控制服务器和介质与流程

2022-02-23 01:58:46 来源:中国专利 TAG:


1.本发明涉及云计算领域,更具体而言,涉及一种存储系统的电源管理方法、装置、控制服务器和介质。


背景技术:

2.目前,为了降低云存储平台上存储云数据的服务器的硬盘的总体拥有成本(tco),一般追求尽量高的硬盘密度。现有的服务器一旦上电,意味着所有硬盘同时加电。但实际上,机械硬盘(hdd)的存储空间占用率在生命周期内是逐渐上升的。即,一开始存储了很少的数据,因此访问频率很小。随着时间的推移,存储的数据越来越多。当一开始存储很少的数据,访问频率很小时,所有的硬盘也都要被供电。hdd硬盘的特点是其空闲状态与负载状态下的功耗差异不大。在hdd硬盘存储很少的数据,和存储很多的数据时,功耗基本差不多。这样,在hdd硬盘存储数据过少,访问频率很小时,造成了功耗浪费。同时,hdd硬盘有具有能耗效率最差、故障率最高的特点,向其持续供电,更容易造成故障。另外,维持高密存储硬件对于承载存储服务器的互联网数据中心(idc)机房的结构承重、机房制冷能力等都提出了比较严苛的要求。如果让hdd硬盘存储空间闲置,还会导致idc机房的能耗和资源浪费。
3.现有技术克服hdd硬盘存储空间闲置带来的资源浪费的方法,是使闲置的hdd硬盘处于休眠或空闲状态。但是,hdd硬盘在休眠或空闲状态仍有耗电,寿命仍有损耗。


技术实现要素:

4.有鉴于此,本发明实施例旨在进一步减少云存储平台中的能耗,提高硬盘使用寿命,减少资源浪费。
5.根据本公开的一方面,提供了一种存储系统的电源管理方法,包括:
6.确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组;
7.监测所述m个硬盘组的存储空间占用率;
8.如果所述存储空间占用率满足预定条件,从所述多个硬盘组中确定n个硬盘组,其中,所述m个硬盘组与所述n个硬盘组不同;
9.为所述n个硬盘组供电。
10.可选地,所述预定条件包括:所述存储空间占用率大于预定占用率阈值。
11.可选地,所述存储系统中至少一个硬盘组中的硬盘数目预先通过以下进行设定:
12.根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率;
13.根据所述访问频率,设置所述硬盘组中的硬盘数目。
14.可选地,所述根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率,包括:
15.根据该存储系统在当前预测周期之前多个历史预测周期内的历史访问记录,获取该存储系统分别在所述多个历史预测周期内的访问频率;
16.按照该存储系统分别在所述多个历史预测周期内的访问频率,确定访问频率随时间变化趋势;
17.根据所述变化趋势,获取该存储系统的当前预测周期的访问频率。
18.可选地,在确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组之前,所述方法还包括:
19.将所述存储系统切分成多个存储集群,将所述多个存储集群中的至少一个存储集群切分成多个硬盘组;
20.在所述多个存储集群中的至少一个存储集群中指定至少一个第一硬盘组;
21.接收数据;
22.为所述数据形成多个数据备份;
23.为数据备份指定对应的存储集群,将该数据备份存储在该存储集群的一个硬盘组中。
24.可选地,所述方法还包括:
25.监测所述存储系统中数据的访问频率;
26.如果所述访问频率低于预定访问频率阈值,将所述数据的所述多个数据备份移入相应存储集群中的第一硬盘组。
27.可选地,在将所述数据的所述多个数据备份移入相应存储集群中的第一硬盘组之后,所述方法还包括:在所述第一硬盘组的存储数据占用率大于预定存储数据占用率的情况下,对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电。
28.可选地,在对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电之后,所述方法还包括:
29.监测所述数据的所述多个数据备份中剩余数据备份的更新频率;
30.如果所述更新频率超出预定更新频率阈值,对停止供电的第一硬盘组恢复供电。
31.根据本公开的一方面,提供了一种存储系统的电源管理装置,包括:
32.第一确定单元,用于确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组;
33.存储空间占用率监测单元,用于监测所述m个硬盘组的存储空间占用率;
34.第二确定单元,用于如果所述存储空间占用率满足预定条件,从所述多个硬盘组中确定n个硬盘组,其中,所述m个硬盘组与所述n个硬盘组不同;
35.供电控制单元,用于为所述n个硬盘组供电。
36.可选地,所述预定条件包括:所述存储空间占用率大于预定占用率阈值。
37.可选地,所述存储系统中至少一个硬盘组中的硬盘数目预先通过以下进行设定:
38.根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率;
39.根据所述访问频率,设置所述硬盘组中的硬盘数目。
40.可选地,所述根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率,包括:
41.根据该存储系统在当前预测周期之前多个历史预测周期内的历史访问记录,获取
该存储系统分别在所述多个历史预测周期内的访问频率;
42.按照该存储系统分别在所述多个历史预测周期内的访问频率,确定访问频率随时间变化趋势;
43.根据所述变化趋势,获取该存储系统的当前预测周期的访问频率。
44.可选地,所述存储系统包括多个存储集群,所述多个存储集群中的至少一个存储集群包括多个硬盘组,在所述多个存储集群中的至少一个存储集群中指定至少一个第一硬盘组,所述存储系统中存储的数据具有多个数据备份,分别存储在一个存储集群中的一个硬盘组。
45.可选地,该装置还包括:
46.访问频率监测单元,用于监测所述存储系统中数据的访问频率;
47.数据备份转移单元,用于如果所述访问频率低于预定访问频率阈值,将所述数据的所述多个数据备份移入相应存储集群中的第一硬盘组。
48.可选地,所述供电控制单元还用于在所述第一硬盘组的存储数据占用率大于预定存储数据占用率的情况下,对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电。
49.可选地,该装置还包括:更新频率监测单元,用于监测所述数据的所述多个数据备份中剩余数据备份的更新频率;所述供电控制单元还用于如果所述更新频率超出预定更新频率阈值,对停止供电的第一硬盘组恢复供电。
50.根据本公开的一方面,提供了一种存储系统控制服务器,包括:
51.存储器,用于存储计算机可执行代码;
52.处理器,用于执行所述计算机可执行代码,以实现根据如上所述的存储系统中的电源管理方法。
53.根据本公开的一方面,提供了一种计算机可读介质,包括计算机可执行代码,所述计算机可执行代码被处理器执行时实现如上所述的存储系统中的电源管理方法。
54.本公开实施例中,将存储系统划分成硬盘组,根据已处于供电状态的m个硬盘组的存储空间占用率,当其满足预定条件时,确定增加供电的硬盘组数n。一开始被供电的硬盘组只存储少量数据。随着存储的数据增多,存储空间占用率增加,增加到满足预定条件时,就可以增加供电的硬盘组,以分散存储。这样,处于供电状态的硬盘组数随着存储的数据量增加不断增加,避免了存储的数据量很少时而供电的硬盘数不少,硬盘存储数据少时和存储数据多时功耗没有明显差别,造成的不必要的功耗、和硬盘长期被上电导致的寿命的减少、以及相应的对机房的结构承重、机房制冷能力等的资源浪费。同时,增加供电的硬盘组数n时,是以硬盘组为粒度,不是整个服务器为粒度,硬盘组包括的硬盘数可以调节,增加了硬盘供电控制的灵活性。以硬盘组为粒度,不是以单个硬盘为粒度,是为了避免增加一个一个硬盘供电导致的效率低下的问题。
附图说明
55.通过参考以下附图对本公开实施例的描述,本公开的上述以及其它目的、特征和优点将更为清楚,在附图中:
56.图1示出本公开实施例的电源管理方法所应用于的云存储平台的体系构架;
57.图2a示出了现有技术在硬盘的生命周期中硬盘中的闲置硬盘资源的变化;
58.图2b示出了本公开实施例中在硬盘的生命周期中硬盘中的闲置硬盘资源的变化;
59.图3a示出了现有技术中的存储系统的存储资源组织结构图;
60.图3b示出了本公开实施例中的存储系统的存储资源组织结构图;
61.图4示出了根据本公开一个实施例的服务器的电源管理控制路径结构;
62.图5示出了根据本公开一个实施例的存储系统的电源管理方法的流程图;
63.图6示出了根据本公开一个实施例的存储系统的电源管理装置的框图;
64.图7示出了根据本公开一个实施例的存储系统控制服务器的结构图。
具体实施方式
65.以下基于实施例对本公开进行描述,但是本公开并不仅仅限于这些实施例。在下文对本公开的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本公开。为了避免混淆本公开的实质,公知的方法、过程、流程没有详细叙述。另外附图不一定是按比例绘制的。
66.云存储平台是提供云形态的存储服务的平台,一般基于分布式文件系统,通过多副本分散备份来实现数据的高可用性。传统的云存储平台的网络结构如图1所示。该网络结构包括服务器140、接入交换机130、汇聚交换机120、核心交换机110。
67.服务器140是云存储平台的处理和存储实体,云存储平台中大量数据的处理和存储都是由这些服务器140完成的。
68.接入交换机130是用来让服务器140接入到云存储平台中的设备。一台接入交换机130接入多台服务器140。接入交换机130通常位于机架顶部,所以它们也被称为机顶(top of rack)交换机,它们物理连接服务器。
69.每台汇聚交换机120连接多台接入交换机130,同时提供其他的服务,例如防火墙,入侵检测,网络分析等。
70.核心交换机110为进出云存储平台的包提供高速的转发,为汇聚交换机120提供连接性。整个云存储平台的网络分为l3层路由网络和l2层路由网络,核心交换机110为通常为整个数据中心的网络提供一个弹性的l3层路由网络。
71.通常情况下,汇聚交换机120是l2和l3层路由网络的分界点,汇聚交换机120以下的是l2网络,以上是l3网络。每组汇聚交换机管理一个传送点(pod,point of delivery),每个pod内都是独立的vlan网络。服务器在pod内迁移不必修改ip地址和默认网关,因为一个pod对应一个l2广播域。
72.图2a示出了现有技术在硬盘的生命周期中硬盘中的闲置硬盘资源的变化。生命周期是指硬盘从投入使用到硬盘损毁的整个过程。存储空间占用率是指硬盘中存储数据占用的存储空间的大小占硬盘总存储空间大小的比。图2a的曲线是硬盘实际使用时存储空间占用率随生命周期变化的曲线。注意,该曲线不是一个硬盘的曲线,是云存储平台上所有硬盘的总体曲线。在图2a中,一开始硬盘存储了很少的数据,这时存储空间占用率很低,闲置资源就会很多,数据访问频率很小。随着时间的推移,存储的数据越来越多,这时存储空间占用率越来越高,闲置资源就会变少。当硬盘一开始存储很少的数据,访问频率很小时,所有的硬盘也都要被供电,而hdd硬盘的特点是其空闲状态与负载状态下的功耗差异不大。因
此,过低的存储空间占用率和数据访问频率会造成功耗浪费。
73.为了克服过低的存储空间占用率和数据访问频率会造成功耗浪费的情况,如图2b所示,本公开实施例中,不是所有硬盘都要被供电的,它是对各硬盘组的供电进行控制,以保持各硬盘组中数据的访问频率。在生命周期初期,存储空间占用率很小,数据访问频率很低,就仅给少量的硬盘被供电,使得之后的数据会集中存储在该少量的硬盘中,提高硬盘组存储空间占用率和数据访问频率。随着存储空间占用率开始越来越大,数据访问频率提高,让越来越多的硬盘供电,以分散已被供电的硬盘的存储压力。没上电的硬盘没有功耗。图2b中存储空间占用率曲线和阶梯型曲线夹着的部分就是闲置硬盘资源。可以看出,本公开实施例中,闲置硬盘资源大大减少,降低了功耗浪费。
74.如图3a所示,现有技术的存储系统160包括多个存储集群150和存储系统控制服务器160。存储系统160是指云存储平台中复制存储的部分。如图1所示,接入交换机130、汇聚交换机120、核心交换机110主要起到交互作用,服务器140起到存储作用,因此,可以认为存储系统160包括各服务器140和其控制设备,即存储系统控制服务器160。存储系统控制服务器160进行对各服务器140的控制。本公开实施例中的电源管理主要是在存储系统控制服务器160执行的。
75.存储集群150是多个服务器160构成的集群,其相当于一个机柜。每个机柜安放多个服务器160,构成一个集群,相应地,有一个接入交换机130通常位于机柜顶部,负责该集群内服务器160向更上层交换机的数据交换。至少一个服务器中包括多个用于存储数据的硬盘180。为了防止数据丢失,提高数据的可用性,一般为要存储到存储系统160中的数据生成多个数据备份,如图3a所示,分别存储到多个存储集群150中的一个服务器140的一个硬盘180。一旦其中一个数据备份丢失,可以在其它存储集群150的硬盘180中找到其它的数据备份。
76.图3b示出了本公开实施例中的存储系统的存储资源组织结构图。如图3a相比,其引入了硬盘组的概念。硬盘组是多个硬盘的集合,是增加供电、停止供电的最小单位。一个硬盘组中的多个硬盘是同时开始供电或停止供电的。一个存储集群150包括多个服务器140,一个服务器140包括多个硬盘组170,一个硬盘组包括多个硬盘180。
77.根据本公开的一个实施例,提供了一种存储系统的电源管理方法。它由图3b的存储系统控制服务器160执行。电源管理是指对存储系统中的硬盘的开始供电和停止供电进行控制。如图5所示,所述方法包括:
78.步骤410、确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组;
79.步骤420、监测所述m个硬盘组的存储空间占用率;
80.步骤430、如果所述存储空间占用率满足预定条件,从所述多个硬盘组中确定n个硬盘组,其中,所述m个硬盘组与所述n个硬盘组不同;
81.步骤440、为所述n个硬盘组供电。
82.存储系统中,一开始可以仅在每个存储集群150中给m个个硬盘组170供电。这时,m=m。然后,检测该硬盘组的存储空间占用率,一旦满足预定条件,增加n个硬盘组供电,即n=n。由于本公开实施例的电源管理方法是周期进行的。在下一个周期,监测到m=m n,一旦这m n个硬盘组的存储空间占用率满足预定条件,再增加n个硬盘组供电,即n=n,以此类推。
83.上述方案中,之所以在每个存储集群150中找到m个硬盘组170供电,而不是让某些存储集群150中有硬盘组170供电,某些存储集群150中没有,是因为,数据在不同存储集群150中有数据备份,这样,就要求各存储集群150中供电的硬盘组170的数量是平衡的,尽量避免在一个存储集群150中供电的硬盘组过多,另一个存储集群150却过少,有利于负载均衡。
84.此时,由于每个存储集群150中有一个或多个硬盘组170被供电,向存储集群150存储的数据备份都会存储到该一个或多个处于供电状态的硬盘组170中。然后,在步骤410中,确定处于供电状态的m个硬盘组。存储系统控制服务器160给硬盘组170供电是有记录的,因此,可以通过查找记录确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组。
85.在步骤420中,监测处于供电状态的硬盘组170的存储空间占用率。如果不满足预定条件,说明其存储的数据未达到一定水平,再增加其他的硬盘组供电,会造成浪费功耗。因此,在步骤430中,只有在存储的数据达到一定水平(满足预定条件)时,才增加新的n个硬盘组供电。这样,向存储集群150存储的数据备份以后会分散到原来的硬盘组170和增加的n个硬盘组170中。然后,使用一段时间后,再监测这些已被供电的硬盘组170的总体存储空间占用率。
86.在步骤430中,如果所述存储空间占用率满足预定条件,从所述多个硬盘组中确定n个硬盘组,其中,所述m个硬盘组与所述n个硬盘组不同。也就是说,这n个硬盘组从所述从所述多个硬盘组的未处于供电状态的硬盘组中确定。
87.在步骤440中,为所述n个硬盘组供电。步骤410-440是周期进行的。在执行完步骤440中,在下一周期,又会执行步骤410,确定处于供电状态的硬盘组,以此类推,循环执行。
88.存储空间占用率是指处于供电状态的硬盘中存储数据占用的存储空间的大小占处于供电状态的硬盘总存储空间大小的比。如果有一个硬盘组处于供电状态,则处于供电状态的硬盘就是该硬盘组中的所有硬盘。如果有多个硬盘组处于供电状态,则处于供电状态的硬盘就是该多个硬盘组中的所有硬盘。
89.在一个实施例中,步骤420可以采用存储系统控制服务器160定期轮询处于供电状态的硬盘组所在的服务器140的方式进行。存储系统控制服务器160定期给各服务器140发起查询请求。服务器140接收到该查询请求后,将其处于供电状态的硬盘组的存储空间占用率返回给存储系统控制服务器160。
90.在一个实施例中,所述预定条件可以是,所述存储空间占用率大于预定占用率阈值。如果所述存储空间占用率大于预定占用率阈值,表明处于供电状态的硬盘中存储数据占用量占处于供电状态的硬盘总容量的比超出阈值,可以为其分配新硬盘组进行分担。如果不分担,虽然功耗足够少,但容易造成溢出。因此,可以增加被供电的硬盘组。
91.在一个实施例中,存储系统中至少一个硬盘组中的硬盘数目可以预先通过以下进行设定:根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率;根据所述访问频率,设置所述硬盘组中的硬盘数目。
92.本公开实施例中,将预测的时间线分成时间间隔,每隔固定的时间间隔预测一次,该固定的时间间隔叫做预测周期。例如,以月为固定时间间隔,则当前预测周期就是当前时间点到当前时间点之后一个月的时间点之间的间隔。当前预测周期之前就是当前时间点之前。访问频率是指一个预测周期内用户访问该存储系统的总访问次数。
93.在一个实施例中,根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率,可以包括如下过程:
94.根据该存储服务器群组在当前预测周期之前多个历史预测周期内的历史访问记录,获取该存储服务器群组在所述多个历史预测周期内的访问频率;
95.按照该存储服务器群组在所述多个历史预测周期内的访问频率,确定访问频率随时间变化趋势;
96.根据所述变化趋势,获取该存储服务器群组的当前预测周期的访问频率。
97.历史预测周期是指当前时间点之前的历史上的预测周期,即当前时间点往前推1、2、3、4
……
个预测周期长度形成的期间。例如,以月为固定时间间隔,当前时间点之前一个月的时间点到当前时间点之间形成一个历史预测周期,当前时间点之前两个月的时间点到当前时间点之前一个月的时间点之间形成一个历史预测周期
……
98.当前预测周期之前多个历史预测周期内的历史访问记录包括这多个历史预测周期中用户每次访问硬盘的时间、访问者、被访问硬盘等与该次访问相关的信息。统计所有这些历史访问记录的个数,就得到了该存储服务器群组在所述多个历史预测周期内的访问频率。这时可以按照该存储服务器群组在所述多个历史预测周期内的访问频率,确定访问频率随时间变化趋势。这种变化趋势可以体现为访问频率随时间变化曲线。以时间点为横轴,访问频率为纵轴,在坐标系中绘制出点,将这些点连接起来,就得到了访问频率随时间变化曲线,该变化曲线体现了访问频率随时间变化趋势。由于仅仅绘制了当前预测周期之前多个历史预测周期的情况,没有当前时间点之后的信息,但在曲线上当前时间点对应的点上沿曲线作切线向右延伸,就预测出了当前时间点之后访问频率的变化情况。在作切线延伸的曲线上,取横坐标是当前时间点后一个预测周期的点,该点的纵坐标就是该存储服务器群组的当前预测周期的访问频率。
99.预测出了该存储系统的当前预测周期的访问频率,就可以根据所述访问频率,设置硬盘组中的硬盘数。
100.在一个实施例中,硬盘数与所述访问频率成正比。即,访问频率越大,每个硬盘组中的硬盘数越大,即粒度越大。因为访问频率越大,需要为其在单位时间增加的硬盘就要越多,否则难以应付这么高的访问频率。这样做的效果是,使得每次增加硬盘的粒度与用户单位时间访问的次数相关,减少不能满足用户访问要求的情况。
101.在上述实施例中,在存储系统存储数据不太多的情况下,让被供电的硬盘组也比较少,使得不至于浪费太多能耗。在另一个实施例中,考虑到在有些情况下,虽然存储系统存储的数据比较多,但都是一些不经常访问的数据,而云存储平台上每个数据还有多个数据备份存储在不同存储集群,这也会造成能耗的浪费。因此,在该实施例中,从数据访问频率方面,对数据进行聚合,并对访问频率比较低的一些数据,对其部分数据备份所在的硬盘组停止供电。即,由于其访问频率比较低,没有必要对其每个备份都时刻保持可访问状态,从而减少功耗。
102.在一个实施例中,在步骤410之前,所述方法还可以包括:将所述存储系统切分成多个存储集群150,将所述多个存储集群150中的至少一个存储集群150切分成多个硬盘组170;在所述存储集群150中的至少一个存储集群150中指定至少一个第一硬盘组;接收数据;为所述数据形成多个数据备份;为数据备份指定对应的存储集群150,将该数据备份存
储在该存储集群150的一个硬盘组170中。
103.如图3b所示,将所述存储系统切分成多个存储集群150,将所述多个存储集群150中的至少一个存储集群150切分成多个硬盘组170。在所述存储集群150中的至少一个存储集群150中指定至少一个第一硬盘组。第一硬盘组是专门用于存放不经常访问的数据的硬盘组,例如,存放访问频率低于预定访问频率阈值的数据的硬盘组。这些数据不经常被访问,没必要让其占用太多资源。将这些数据放入第一硬盘组。这些第一硬盘组的一部分可以在后面的过程中停止供电,以减少能耗。
104.当存储系统接收到数据后,为数据形成多个数据备份(例如,3个数据备份)。为每个数据备份指定一个存储集群150,将该数据备份存储在该存储集群150的一个硬盘组170中。如图3b所示,为数据备份1选择存储集群1,将其存储在存储集群1中的一个硬盘组170中;为数据备份2选择存储集群2,将其存储在存储集群2中的一个硬盘组170中;为数据备份3选择存储集群n,将其存储在存储集群n中的一个硬盘组170中;存储集群3到n-1没有存储该数据的任何备份。
105.由于每个存储集群150中有第一硬盘组,如果某一数据不经常被访问,就可以将其各备份转移到各自的第一硬盘组中。这些第一硬盘组中的一部分可以被选择停止供电,以减少能耗。例如,某一不经常访问的数据有3个数据备份,分别存储在3个存储集群各自的第一硬盘组中。由于其不经常被访问,可以让3个数据备份中的2个数据备份所在的第一硬盘组停止供电,减少能耗。由于还有1个数据备份没有被停止供电,可以随时恢复其余的数据备份。
106.在该实施例中,所述方法还包括:
107.监测所述存储系统中数据的访问频率;
108.如果所述访问频率低于预定访问频率阈值,将所述数据的所述多个数据备份移入相应存储集群中的第一硬盘组。
109.在一个实施例中,监测所述存储系统中数据的访问频率,可以采用存储系统控制服务器160定期轮询服务器140的方式。存储系统控制服务器160定期给存储系统中的各服务器140发起定期查询请求。各服务器140接收到该查询请求后,根据其存储的访问日志,从访问日志中得出其存储的每个数据在预定时间周期内被访问的次数,即访问频率,发给存储系统控制服务器160。例如,从访问日志中,可以得出当前时间点前24小时的时间点与当前时间点之间的时间段中,各数据分别被访问了多少次,即各数据的访问频率。
110.然后,针对每个数据,确定其访问频率是否低于预定访问频率阈值。如果低于,说明其是冷数据,不常被访问,可以归入第一硬盘组。由于数据有多个数据备份,分别存储在不同存储集群150,只要在一个存储集群150的数据备份被归到该存储集群150的第一硬盘组,其余数据备份也会被归到相应存储集群150的第一硬盘组。
111.在一个实施例中,所述方法还包括:在所述第一硬盘组的存储数据占用率大于预定存储数据占用率的情况下,对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电。这是因为,如果第一硬盘组的存储数据占用率很小,没有必要对其断电。存储数据占用率等于第一硬盘组中已存储数据的存储空间占第一硬盘组整个存储空间的比率。当该比率大于预定存储数据占用率,说明其存储数据足够多,这些数据用到的频率还很低,可以考虑让一部分数据备份所在的第一硬盘组断电。如果数据的访问频率不高,
为其设置多个数据备份分别保存,都占用一份存储空间,导致能耗增加。因此,可以将这多个数据备份的一部分数据备份在各自的存储集群150中占用的第一硬盘组停止供电。例如,在保存3个数据备份的情况,可以让其中1-2个数据备份占用的第一硬盘组停止供电。
112.在一个实施例中,在对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电之后,所述方法还包括:
113.监测所述数据的所述多个数据备份中剩余数据备份的更新频率;
114.如果所述更新频率超出预定更新频率阈值,对停止供电的第一硬盘组恢复供电。
115.剩余副本即多个数据备份中除去停止供电的那些第一硬盘组上的那部分数据备份的数据备份,即没有停止供电的硬盘组上的数据备份。例如,对同一不常用数据的3个数据备份的2个数据备份占用的第一硬盘组停止供电,剩余数据备份就是指那个未停止供电的硬盘组上的数据备份。更新频率是指被覆写的频率。访问包括读或写。将硬盘组停止供电不影响读,只要有剩余的一个数据备份存在,该数据就能够后续被读出。但如果访问是写,而多个数据备份的一部分数据备份所在的第一硬盘组已被停止供电,就会发生剩余数据备份被覆写,而停止供电的那部分不会被覆写的情况。而停止供电的硬盘组将来可能恢复供电,就存在同一数据的不同数据备份不一致的情况。为了减少这种情况发生,监测多个数据备份中的剩余数据备份的更新频率,这一更新频率是指被覆写的频率,一旦该频率比较高,应马上将停止供电的第一硬盘组恢复供电。
116.在一个实施例中,监测更新频率可以采用存储系统控制服务器160定期轮询服务器140的方式。存储系统控制服务器160定期给所有存储集群150中的所有服务器140发起定期查询请求。服务器140接收到该查询请求后,根据其存储的访问日志,从访问日志中得出其在单位时间被覆写的次数,即访问频率,发给存储系统控制服务器160。
117.然后,存储系统控制服务器160确定该更新频率是否超出预定更新频率阈值。如果该更新频率超出预定更新频率阈值,对停止供电的第一硬盘组恢复供电。
118.本公开实施例中,如果由于存储的主要都是访问频率不高的数据的原因,导致不必要的能耗较大,可以对一些访问频率过小的数据的一部分数据备份占用的硬盘组停止供电,当更新频率足够大时,再将其恢复供电。这样,减少了硬盘组中数据访问频率不高造成的不必要的能耗和资源损耗。
119.上述过程中,监测数据的访问频率、监测所述多个数据备份中剩余数据备份的更新频率可以定期进行,这样,能够及时跟踪存储系统中冷热数据(访问频率不高的数据、和访问频率高的数据)的变化情况,使得冷数据变成热数据的情况和热数据变成冷数据的情况能及时被发现。
120.上述过程中,增加被供电的硬盘组、对一部分第一硬盘组停止供电和在更新频率超出预定更新频率阈值时恢复供电,是通过服务器140内部的路径控制的。存储系统控制服务器160可以通过路径收集各硬盘组的开关状态,并根据收集的开关状态和要进行供电还是停止供电,控制各硬盘组开关的接通和断开。开关状态是指硬盘组开关是接通还是断开。下面对该路径进行详细描述。
121.如图4所示,服务器140分为软件层1412和硬件层1413。硬件层1413分成主板1414和存储模块1415。
122.软件层1412包括分布式文件系统控制代理1416、操作系统1417、磁盘驱动器1418、
基本输入输出系统(bios)1420。分布式文件系统控制代理1416是与存储系统控制服务器160相对、设置在存储服务器140中完成存储系统控制服务器160委托的功能的应用软件。操作系统1417是管理服务器140硬件与软件资源的计算机程序,同时也是服务器140的内核与基石。磁盘驱动器1419是驱动磁盘控制器1423从而使磁盘正常运行的部件。基本输入输出系统(bios)1420,在ibm pc兼容系统上,是一种业界标准的固件接口,它保存着服务器140最重要的基本输入输出的程序、开机后自检程序和系统自启动程序,它可从cmos中读写系统设置的具体信息。
123.主板1414包括磁盘控制器1423、平台控制多端口转发器(pch)1421和基板管理控制器(bmc)1422。磁盘控制器1423是控制磁盘的读写的器件。pch 1421是服务器140中防线路故障的器件,它能够在服务器140中某条线路产生了故障时,不影响其它线路的工作。bmc 1422完成对存储模块1415基本的控制功能。
124.存储模块1415包括复杂可编程逻辑器件(cpld)1424和各硬盘组开关1425。cpld 1424向各硬盘组开关1425输送供电/停止供电控制信号,控制各硬盘组开关1425的接通或断开,从而控制供电或停止供电。另外,各硬盘组开关1425还上报供电/停止供电状态采集信号给cpld 1424,该供电/停止供电状态采集信号指示相应的硬盘组开关是接通还是断开,即供电还是停止供电。另外,各硬盘组开关1425还统一连接有电源。
125.在一个实施例中,所述收集各硬盘组的开关状态是通过第一路径进行的。第一路径包含cpld 1424、bmc 1422、磁盘控制器1423、磁盘驱动器1419、操作系统1417、分布式文件系统控制代理1416。各硬盘组开关1425还上报供电/停止供电状态采集信号给cpld 1424,cpld 1424依次通过bmc 1422、磁盘控制器1423、磁盘驱动器1419、操作系统1417将供电/停止供电状态采集信号上报给分布式文件系统控制代理1416,最后由相应分布式文件系统控制代理1416上报给存储系统控制服务器160。通过这种方式,充分利用服务器140固有的组件,收集各硬盘组的开关状态,达到简单、高效的目的。
126.在一个实施例中,所述控制各硬盘组开关的接通和断开是通过第二路径进行的。第二路径包含分布式文件系统控制代理1416、操作系统1417、磁盘驱动器1419、bmc 1422、cpld 1424。存储系统控制服务器160将供电/停止供电控制信号发送给分布式文件系统控制代理1416,分布式文件系统控制代理1416依次通过操作系统1417、磁盘驱动器1419、bmc 1422将供电/停止供电控制信号发给cpld 1424,由cpld 1424将供电/停止供电控制信号发给各硬盘组开关1425,从而以简单的电路达到控制各硬盘组的供电/停止供电的目的。
127.如图6所示,根据本公开的一个实施例,提供了一种存储系统的电源管理装置500,所述装置500包括:
128.第一确定单元510,用于确定所述存储系统的多个硬盘组中处于供电状态的m个硬盘组;
129.存储空间占用率监测单元520,用于监测所述m个硬盘组的存储空间占用率;
130.第二确定单元530,用于如果所述存储空间占用率满足预定条件,从所述多个硬盘组中确定n个硬盘组,其中,所述m个硬盘组与所述n个硬盘组不同;
131.供电控制单元540,用于为所述n个硬盘组供电。
132.可选地,所述预定条件包括:所述存储空间占用率大于预定占用率阈值。
133.可选地,所述存储系统中至少一个硬盘组中的硬盘数目预先通过以下进行设定:
134.根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率;
135.根据所述访问频率,设置所述硬盘组中的硬盘数目。
136.可选地,所述根据该存储系统在当前预测周期之前的历史访问记录,预测该存储系统的当前预测周期的访问频率,包括:
137.根据该存储系统在当前预测周期之前多个历史预测周期内的历史访问记录,获取该存储系统分别在所述多个历史预测周期内的访问频率;
138.按照该存储系统分别在所述多个历史预测周期内的访问频率,确定访问频率随时间变化趋势;
139.根据所述变化趋势,获取该存储系统的当前预测周期的访问频率。
140.可选地,所述存储系统包括多个存储集群,所述多个存储集群中的至少一个存储集群包括多个硬盘组,在所述多个存储集群中的至少一个存储集群中指定至少一个第一硬盘组,所述存储系统中存储的数据具有多个数据备份,分别存储在一个存储集群中的一个硬盘组。
141.可选地,该装置500还包括:
142.访问频率监测单元,用于监测所述存储系统中数据的访问频率;
143.数据备份转移单元,用于如果所述访问频率低于预定访问频率阈值,将所述数据的所述多个数据备份移入相应存储集群中的第一硬盘组。
144.可选地,所述供电控制单元540还用于在所述第一硬盘组的存储数据占用率大于预定存储数据占用率的情况下,对所述数据的所述多个数据备份中至少一个数据备份所移入的第一硬盘组停止供电。
145.可选地,该装置500还包括:更新频率监测单元,用于监测所述数据的所述多个数据备份中剩余数据备份的更新频率;所述供电控制单元540还用于如果所述更新频率超出预定更新频率阈值,对停止供电的第一硬盘组恢复供电。
146.电源管理装置500的实现细节在前面方法实施例中得到了充分描述,为节约篇幅,不再赘述。
147.根据本公开的一个实施例的存储系统的电源管理方法可以由图7的存储系统控制服务器160实现。下面参照图7来描述根据本公开实施例的存储系统控制服务器160。图7显示的存储系统控制服务器160仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
148.如图7所示,存储系统控制服务器160以通用计算设备的形式表现。存储系统控制服务器160的组件可以包括但不限于:上述至少一个处理单元810、上述至少一个存储单元820、连接不同系统组件(包括存储单元820和处理单元810)的总线830。
149.其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元810执行,使得所述处理单元810执行本说明书上述示例性方法的描述部分中描述的本公开各种示例性实施方式的步骤。例如,所述处理单元810可以执行如图5中所示的各个步骤。
150.存储单元820可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(ram)8201和/或高速缓存存储单元8202,还可以进一步包括只读存储单元(rom)8203。
151.存储单元820还可以包括具有一组(至少一个)程序模块8205的程序/实用工具
8204,这样的程序模块8205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
152.总线830可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
153.存储系统控制服务器160也可以与一个或多个外部设备700(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该存储系统控制服务器160交互的设备通信,和/或与使得该存储系统控制服务器160能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(i/o)接口850进行。并且,存储系统控制服务器160还可以通过网络适配器860与一个或者多个网络(例如局域网(lan),广域网(wan)和/或公共网络,例如因特网)通信。如图所示,网络适配器860通过总线830与存储系统控制服务器160的其它模块通信。应当明白,尽管图中未示出,可以结合存储系统控制服务器160使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、raid系统、磁带驱动器以及数据备份存储系统等。
154.需要领会,以上所述仅为本公开的优选实施例,并不用于限制本公开,对于本领域技术人员而言,本说明书的实施例存在许多变型。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
155.应该理解,本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同或相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。
156.应该理解,上述对本说明书特定实施例进行了描述。其它实施例在权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
157.应该理解,本文用单数形式描述或者在附图中仅显示一个的元件并不代表将该元件的数量限于一个。此外,本文中被描述或示出为分开的模块或元件可被组合为单个模块或元件,且本文中被描述或示出为单个的模块或元件可被拆分为多个模块或元件。
158.还应理解,本文采用的术语和表述方式只是用于描述,本说明书的一个或多个实施例并不应局限于这些术语和表述。使用这些术语和表述并不意味着排除任何示意和描述(或其中部分)的等效特征,应认识到可能存在的各种修改也应包含在权利要求范围内。其他修改、变化和替换也可能存在。相应的,权利要求应视为覆盖所有这些等效物。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献