数据存储阵列的增强式功率控制的制作方法

文档序号:11133219阅读:489来源:国知局
数据存储阵列的增强式功率控制的制造方法与工艺

本公开的各方面涉及数据存储系统中的数据存储和数据存储设备阵列的领域。



背景技术:

计算机和网络系统(诸如,数据存储系统、服务器系统、云存储系统、个人计算机和工作站)典型地包括用于存储和检索数据的数据存储设备。这些数据存储设备可以包括硬盘驱动器(HDD)、固态存储驱动器(SSD)、带式存储设备、光学存储驱动器、包含旋转和固态数据存储元件的混合存储设备以及其它海量存储设备。

随着计算机系统和网络在数量和能力方面的增长,日益需要增加存储容量。数据中心、云计算设施和其它规模化数据处理系统已经进一步增加了对于能够传送和保存庞大数据量的数字数据存储系统的需要。数据中心可以容纳在各种机架安装式的且高密度的存储配置下的这种大数量数据存储设备。

在对于数据存储设备的密度和工作量增加的同时,个体的数据机箱(enclosure)可能经历至关联电源装备的故障,这可能促成对于冗余电源装备的增加的故障率。此外,当特定数据机箱中的电源经历故障时,数据机箱的操作可能暂停。当采用冗余电源时,归因于其余电源上加载的浪涌或尖峰,第一电源故障可能级联以导致另外的电源故障。



技术实现要素:

为了提供数据存储设备和系统的增强式操作,在此提供各种系统、装置、方法和软件。在第一示例中,提出一种数据存储系统。所述数据存储系统包括:数据存储设备,被配置用于数据的存储和检索;电源模块,被配置为将功率提供给至少所述多个数据存储设备;以及管理控制器,被配置为监控与所述电源模块关联的功率性质,以检测降级功率状况。响应于所述降级功率状况,所述管理控制器被配置为建立对所述数据存储设备的性能的调整,以减缓所述降级功率状况。

在另一示例中,提供一种操作数据存储系统的方法。所述方法包括:在多个数据存储设备中存储并且检索数据;使用一个或多个电源模块将功率提供给至少所述多个数据存储设备;以及监控与所述一个或多个电源模块关联的功率性质,以检测降级功率状况。响应于所述降级功率状况,所述方法包括:建立对所述多个数据存储设备的性能的调整,以减缓所述降级功率状况。

在另一示例中,提供一种数据存储组装(assembly)。所述数据存储组装包括:多个数据存储设备,包括用于数据的存储和检索的介质;机箱,被配置为:包封(enclose)并且在结构上支撑所述多个数据存储设备;多个电源,被配置为将功率提供给所述机箱中的至少所述多个数据存储设备;以及控制系统,被配置为使用一个或多个电源监控器来监控所述电源的操作特性。所述控制系统被配置为:当所述多个电源中的至少一个经历降级操作状况时,调整所述多个数据存储设备的多个操作因素中的至少一个,以将所述数据存储组装的功耗维持在阈值功率级别以下。

附图说明

参照以下附图可以更好地理解本公开的很多方面。附图中的组件并不一定按比例,而是着重于清楚地示出本公开的原理。此外,在附图中,相同标号贯穿若干附图指定对应部分。虽然结合这些附图描述若干实施例,但本公开不限于在此所公开的实施例。反之,意图是覆盖所有替选、修改和等同物。

图1是示出数据系统的系统图。

图2是示出数据存储系统的操作的方法的流程图。

图3是示出数据系统的系统图。

图4是示出数据存储系统的操作的方法的流程图。

具体实施方式

数据存储设备(诸如,硬盘驱动器(HDD)、固态驱动器(SSD)以及具有旋转和固态存储元件的混合盘驱动器)可以被包括于各种阵列式配置(诸如,容纳几十个个体驱动器的机架安装式机箱)中。可以随机箱而包括冷却风扇或通风风扇,以引导各个驱动器上的气流。还可以包括电源装备来提供功率给各个存储设备,以便将来自公共设施(utility)或建筑基础设施的输入功率转换为存储设备可使用的形式,并且提供其它功能(诸如,保持特征、功率监控特征等)。当第一电源出故障或经历降级的(degraded)状况时,其余电源可以通过继续将功率提供给关联存储驱动器来补偿降级的或出故障的电源。然而,这样可能导致其余电源上的增加的压力,并且在一些情况下导致“箝位(clamping)”状况,在该“箝位”状况下一其余电源上的负载的快速增加可能使得该其余电源变为过载或甚至出故障。

除了别的之外,合并了旋转介质(诸如,硬盘驱动器的旋转磁介质)的驱动器还包括各种机电元件,以在旋动介质上定位读取/写入头。这些机电元件包括电枢、电机、致动器、音圈、伺服器或可以具有关联功率耗散特性的其它元件。典型地,存储设备尽可能快速地在介质的期望部分上定位关联的读取/写入元件,以减少用于读取和写入数据的滞后时间。然而,在旋动介质中,即使读取/写入头被定位到正确的圆周位置(即,数据轨道),介质也可能仍然需要进行完全旋转的一部分,以将期望的数据块放置在读取/写入头之下。这种将读取/写入头移动到期望的轨道位置的过程典型地被称为搜寻(seek)操作。

已经开发了及时(JIT,Just-in-time)搜寻技术,其利用在将旋动介质上的数据块定位在读取/写入头之下时的搜寻延迟。各种跟踪算法可以标识旋动介质相对于当前读取/写入头位置的位置,并且建立用以将读取/写入头移动到期望的位置的时间,以便在期望的时间碰到期望的数据块,而没有在定位读取/写入头之后所招致的额外旋转延迟。与仅仅像机电元件所允许的那样快地定位读取/写入头相比,这些JIT技术典型地使用更少的峰值功率。此外,在一些示例中,JIT技术可以包括各种可选择的搜寻性能级别(诸如,256个级别)。

在此所讨论的示例可以采用对数据存储设备的至少搜寻性能的调整,以影响数据存储阵列和关联数据存储设备的功耗。作为数据存储系统的第一示例,提出图1。图1是示出系统100的系统图。系统100包括数据存储系统110以及一个或多个主机系统140。数据存储系统110和主机系统140通过存储链路130进行通信。数据存储系统110可以被包括于包括一个或多个数据存储阵列的环境(诸如,机架安装计算环境)中。

在图1中,数据存储系统110包括包含管理控制器111、功率传感器112、机箱113、多个电源115-116以及多个数据存储设备120-124的组装。数据存储设备120-124中的每一个可以包括一个或多个旋转存储介质(诸如,在对于数据存储设备124的详细视图中示出为包括旋转介质125和读取/写入头/电枢组装126)。在一些示例中,数据存储设备120-124中的那些数据存储设备包括固态存储介质,并且可以省略旋转介质。管理控制器111以通信方式耦合到数据存储设备120-124和功率传感器112。虽然管理控制器111在该示例中示出为在数据存储系统110内部,但应当理解,在其它示例中,可以在数据存储系统110外部的其它元件中包括管理控制器111。

在操作中,数据存储系统110通过存储链路130接收由主机系统140所发出的读取事务或写入事务(诸如,写入操作131和读取操作132)。响应于读取操作,数据存储系统110中的个体数据存储设备可以检索在关联存储介质上所存储的数据以便传送到主机系统140。响应于写入操作,数据存储系统110中的个体数据存储设备将数据存储在关联存储介质上。应当理解,图1中为了清楚起见而省略数据存储系统110和数据存储设备120-124的其它组件(诸如,事务队列、底盘、风扇、互连、读取/写入头、介质、电枢、前置放大器、收发机、处理器、放大器、电机、伺服器、机箱以及其它电元件和机械元件)。

为了进一步示出数据系统100的操作,提供图2。图2是示出操作数据存储系统110的方法的流程图。以下以括号方式引用图2的操作。在图2中,数据存储系统110使用被定位在机箱113中的数据存储设备120-124在数据存储系统110中存储和检索(201)数据。数据存储系统110通过主机接口330接收读取和写入操作,并且数据存储设备120-124中的那些数据存储设备可以诸如通过存储写入数据或检索读取数据来处置这些操作。读取操作可以包括由管理控制器111接收到的读取132,写入操作可以包括由管理控制器111接收到的写入131。除了别的之外,可以接收其它事务或操作(诸如,元数据操作、维护操作或管控操作)以便由管理控制器111进行处置。

在数据存储系统110的操作期间,管理控制器111测量(202)与数据存储系统110关联的功率信息。数据存储系统110中包括一个或多个功率传感器112,以测量除了其它与功率有关的度量或特性(诸如,电流汲取或电压电平)之外的功耗。功耗可以与由存储设备120-124、管理控制器111或其它元件(诸如,风扇、显示器、用户接口元件或从电源115-116中的任一者接收功率的其它组件)中的任一者所消耗的功率有关。这些功率传感器可以监控与电源115-116中的每一个关联的各种功率信息,并且将该功率信息传送到监控(202)功率信息的管理控制器111。除了其它单位和测度之外,功率信息可以指示关于以瓦特(W)为单位的输入、输出和消耗、以伏特(V)为单位的电压以及以安培(A)为单位的电流的功率信息。还可以监控电源115-116的操作状态,以标识电源115-116中的任一者何时出故障或经历降级的操作状态。

数据存储系统110检测(203)与电源关联的降级性能。该降级性能可以与数据存储系统110的单个电源或与一个以上电源关联。降级性能可以包括电源(诸如电源115或116)何时出故障。故障可以包括包含电源的组件的故障或对于该特定电源的输入功率源的故障。在很多示例中,数据存储系统110中包括多个电源模块,并且电源模块中的一个(或多个)可能经历可能导致该电源不再能够将输出功率提供给存储设备120-124的故障。然而,由于以冗余方式包括一个以上电源模块(诸如,电源115-116),那么保持运作的电源可以继续将功率提供给数据存储系统110的各个组件。

在其它示例中,当电源继续运作、但用于该电源的输入功率源被移除或者在电压方面降低时,降级性能出现。传感器112和管理控制器111可以诸如通过监控用于每个电源的输入电压电平来监控输入功率特性,并且可以确定特定输入电压电平何时跌落到阈值级别以下。该阈值级别可以指示由提供功率给该特定电源的线路上的掉电状况或其它错误状况造成的较低电压电平。

数据存储系统110建立(204)至少对数据存储设备120-124的操作的调整,以减缓电源的降级性能。当数据存储系统110中的第一电源出故障时,一个或多个其余冗余电源可以继续将功率提供给数据存储系统110的元件。然而,由于少了一个可用于提供功率工作量的分担的电源,这些其余操作电源可能经历工作量的增加。例如,当数据存储系统110中包括两个电源时,电源可以在它们之间划分用于功率转换和分发职责的工作量,并且各自将提供数据存储系统110的一半功耗需求,但其它比例和工作量分工是可能的。然而,当两个电源中的一个出故障时,那么其余电源必需供应数据存储系统110的所有功率。为了防止对于其余电源的工作量的增加,或者为了减缓其余电源上的过载,数据存储系统110可以进行对至少数据存储设备120-124的操作的调整。

这些调整可以包括:诸如当数据存储设备120-124包括具有关联读取/写入头组件的旋转介质时,更改数据存储设备120-124的搜寻性能。当响应于降级电源性能而进行对搜寻操作的调整或更改时,这些调整可以由管理系统111指令给数据存储设备120-124中的任一者。数据存储设备的搜寻操作可以包括由读取/写入头从存储介质上的初始位置移动到期望的轨道位置而产生的关联延迟。这些搜寻操作可能期望读取/写入头尽可能快地移动。然而,这可能带来移动或定位读取/写入头的各种机电元件中的增加的功率耗散。可以修改数据存储系统110中的数据存储设备的搜寻操作,以减少移动或定位读取/写入头的各种机电元件的峰值速度。这种峰值速度的减少可以导致这些元件的更少的功率耗散、每个存储设备的更低的功率耗散,以及还有数据存储系统110的聚合。

可以进行对数据存储设备120-124的搜寻性质的各种调整。例如,可以对于数据存储设备120-124中的一个或多个调整搜寻曲线(profile),这样减少搜寻操作的范围上的峰值功率耗散。例如,与较长的搜寻操作相比,较短的搜寻操作可以具有更少的跟踪速度的减少,以提供功率耗散的净降低。在其它示例中,按预定量(诸如,用于定位关联读取/写入头的速率、时间、速度、加速度或功率使用率的百分比)来减少所有搜寻操作。

在另外的示例中,可以对于数据存储设备120-124中的那些数据存储设备建立并且调整及时(JIT)搜寻操作。这些JIT搜寻操作可以计时读取/写入头到达存储介质期望的数据轨道上的期望位置以与该数据轨道内的期望数据块或数据扇区紧密一致。JIT操作可以具有各种调整级别(诸如,在一些示例中,256个级别,或其子集)。管理控制器311可以基于功率传感器112中的任一者所测量的功率信息来进行对JIT级别或其它搜寻性质的调整。

当采用非旋转介质(诸如固态介质)时,可以进行性能调整,诸如减少关联固态存储组件的吞吐量,扼制固态介质的写入性能以限制关于写入操作的功耗,或者当在其它固态介质(诸如,非易失性存储器或易失性存储器)中缓存待决写入数据时暂停至闪存介质的写入操作。以下在其它示例中讨论其它调整。

可以进行这些调整以减少数据存储系统110的功耗,诸如以便将功耗限制到功耗阈值以下。例如,当第一电源出故障时,其余一个或多个电源可能经历更大的工作量,并且响应于此,可以减少数据存储系统110的功耗以将功耗限制到其余电源的预定标称范围内。在一些示例中,可以将功耗减少到与由于第一电源的故障而损失的功率容量的量相当的级别(诸如,当采用两个电源并且第一电源出故障时,减少到初始功耗级别的一半)。调整可以保持起作用,直到添加或替换电源以将数据存储系统110的电源容量恢复到故障之前的初始级别。

类似地,当电源未出故障、但对电源的输入电压下降到阈值级别以下时,那么也可以进行这些调整,以减缓与电压下降相当的功率的减少,或减缓由于电压下降导致的来自源/输入的电流汲取的增加。如果对电源115-116中的任一者的输入电压跌落达第一量(诸如,百分之十(10%)),那么可以按该第一量(诸如,10%)降低数据存储阵列110中的对应功耗,以在输入电压下降期间将电源上的负载维持为恒定的。可以实现归因于较低输入功率级别的功耗的其它比例量。

其它调整包括:减少或暂停数据存储设备120-124的背景介质扫描(BMS)或数据完整性检验。在另外的示例中,数据存储设备120-124中的那些数据存储设备可以减小功率或使得关联旋转介质降速(spin down)到更慢的速率或暂停操作,以减少数据存储系统110的功耗。可以采用这些技术的组合,并且这些改变可以仅应用于数据存储设备120-124中的所选择的那些数据存储设备,还可以应用于数据存储设备120-124的整个集合。

返回图1的元件,数据存储系统110包括多个数据存储设备120-124。这些数据存储设备通过一条或多条存储链路耦合到管理控制器111,存储链路可以包括串行ATA接口、串行连接小型计算机系统(SAS)接口、集成驱动电子(IDE)接口、非易失性存储器高速(NVMe)接口、ATA接口、外围组件互连高速(PCIe)接口、通用串行总线(USB)接口、无线接口、直接介质接口(DMI)、以太网接口、联网接口或包括其组合、变型和改进的其它通信和数据接口。数据存储系统110还可以包括缓存系统、底盘、机箱、风扇、互连、缆线或其它电路和装备。

管理控制器111包括处理电路、通信接口以及一个或多个非瞬时计算机可读存储介质。处理电路可以包括一个或多个微处理器以及检索并且运行来自存储器的固件的其它电路,以便如在此所讨论地那样操作。虽然处理电路可以实现于单个处理设备内,但也可以跨越在运行程序指令时协作的多个处理设备或子系统而分布。处理电路的示例包括通用中央处理单元、专用处理器和逻辑器件以及任何其它类型的处理设备、其组合或变型。通信接口可以包括一个或多个存储接口,以用于与主机系统、网络等进行通信。通信系统可以包括收发机、接口电路、连接器、缓冲器、微控制器以及其它接口装备。

功率传感器112各自包括一个或多个感测元件,以用于测量数据存储系统110的功耗、电流汲取、电压电平或其它关联性质,诸如,对于电源115-116中的每一个的输入电压/电流,或者数据存储设备120-124以及与机箱113关联的其它组件的功耗。

功率传感器112可以包括电流感测元件、电压感测元件、功耗处理元件或其它功率感测元件。电流感测元件可以包括电流感测电阻器、运算放大器、比较器、磁电流感测元件、霍尔效应感测元件或其它电流感测元件。电压感测元件可以包括分压器、运算放大器或其它模拟或数字电压感测元件。功率传感器112还可以包括用于将所测量的功率信息传递到诸如管理控制器111的各种接口。除了其它元件之外,这些接口可以包括收发机、模数转换元件、放大器、滤波器、信号处理器。在一些示例中,功率传感器112中的每一个可以包括微控制器元件、可编程逻辑或分立式逻辑,以控制功率传感器112的操作。在数据存储设备120-124各自包括功率传感器112中的那些功率传感器的示例中,数据存储设备可以包括用以通过关联存储或主机接口将功率信息传送到管理控制器111的装备和电路。

机箱113包括用以容纳并且在结构上支撑数据存储系统110的元件的结构元件。除了其它元件之外,机箱113可以包括底盘元件、外框、紧固元件、机架安装特征、通风特征。在很多示例中,机箱113还包括风扇或其它冷却和通风元件,以便将气流提供给数据存储系统110的元件。

数据存储系统110还包括一个或多个电源115-116,以转换外部输入功率源或将各种形式的电能提供给数据存储系统110的元件。除了其它元件之外,电源115-116各自包括功率转换元件、功率电子器件、变压器、电压转换电路。在一些示例中,电源115-116各自包括电压、电流或功率监控电路,并且可以将这种所监控的信息提供给管理控制器111。电源115-116还可以包括一个或多个通风风扇,以将冷却和通风提供给电源115-116以及机箱113中的其它组件。在操作中,电源115-116各自将由设施或公共设施所提供的线路功率转换并且调适为数据存储系统110的元件的电压和电流要求。除了其它功率转换特征和电路之外,这可以包括电压步升(step up)电路、电压步降(step down)电路、电流或功率限制和监控电路、AC到DC转换电路、DC到DC转换电路、功率因子校正电路或电磁干扰减缓电路。

数据存储设备120-124中的每一个包括可经由一个或多个读取/写入头以及关联机电元件存取的一个或多个计算机可读存储介质。在图1中,数据存储设备124的示例详细视图被示出为强调旋转介质125以及读取/写入头和电枢组装126,并且这些元件可以被包括于数据存储设备120-124中的每一个中,但在数据存储设备当中,变型是可能的。数据存储设备120-124还可以各自包括处理电路、通信接口、电枢、前置放大器、收发机、处理器、放大器、电机、伺服器、机箱以及其它电元件和机械元件。数据存储设备120-124可以各自包括硬盘驱动器、混合盘驱动器、固态驱动器或包括其组合的其它计算机可读存储设备。数据存储设备120-124可以各自包括另外的元件(诸如,关于图3中的盘驱动器320-323所讨论的元件),但变型是可能的。数据存储设备120-124的计算机可读存储介质可以各自包括旋转磁存储介质,但可以附加地包括其它介质(诸如,固态驱动器元件、缓存或缓存系统)。这些其它介质可以包括固态存储介质、光学存储介质、非旋转磁介质、相变磁介质、基于旋动的存储介质或包括其组合、变型和改进的其它存储介质。在一些示例中,数据存储设备120-124各自包括采用固态存储元件以及旋转磁存储介质的混合硬驱动器。关联存储介质可以采用各种磁存储方案,诸如,随机写入技术、叠瓦式磁记录(SMR)、或垂直磁记录(PMR),包括其组合、变型和改进。

主机系统140可以包括处理元件、数据传送元件和用户接口元件。在一些示例中,主机系统140是计算设备或计算系统的中央处理单元。在其它示例中,主机系统140还包括存储器元件、数据存储和传送元件、控制器元件、逻辑元件、固件、执行元件以及其它处理系统组件。在另外其它示例中,主机系统140包括RAID控制器处理器或存储系统中央处理器,诸如微处理器、微控制器、现场可编程门阵列(FPGA)或其它处理和逻辑器件,包括其组合。主机系统140可以包括用户接口元件,或与用户接口元件进行接口连接,该用户接口元件可以允许数据系统100的用户控制数据系统100的操作或监控数据系统100的状态或操作。这些用户接口元件可以包括图形或文本显示器、指示灯、网络接口、web接口、软件接口、用户输入设备或其它用户接口元件。主机系统140还可以包括用于处置总线130上的通信的接口电路和元件,诸如逻辑、处理部分、缓冲器、收发机等。

总线130可以包括一个或多个串行数据链路或并行数据链路,诸如外围组件互连高速(PCIe)接口、串行ATA接口、串行连接小型计算机系统(SAS)接口、集成驱动电子(IDE)接口、ATA接口、通用串行总线(USB)接口、无线接口、直接介质接口(DMI)、以太网接口、联网接口或包括其组合、变型和改进的其它通信和数据接口。虽然图1中示出一条总线130,但应当理解,在数据系统100的各元件之间可以采用一条或多条分立式链路。

作为采用数据存储阵列的另一示例数据存储系统,提出图3。图3是示出数据存储系统300的系统图。数据存储系统300包括存储组装310以及一个或多个主机系统350。存储组装310和主机系统350通过存储链路360进行通信。存储组装310的各种元件可以被包括在图1的数据存储系统110中,但变型是可能的。虽然图3中示出一个存储组装310,但应当理解,诸如在采用很多数据存储阵列的数据存储环境中,一个以上存储组装可以被包括在并且链接到主机系统350或其它主机系统。

存储组装310可以包括具有关联机箱和可插入到能够支承其它存储组装的机架(诸如机架服务器环境)中的结构元件的存储组装。机箱可以包括用以安装多个存储驱动器的结构元件,并且还可以包括用于通过存储链路360以通信方式耦合存储组装310的控制系统370或主机接口371的至少一个外部连接器。

存储组装310可以包括独立盘冗余阵列(RAID)阵列或JBOD设备(“简单盘簇(Just a Bunch Of Disks)”)设备,所述JOBD设备包括能够跨盘(spanned)并且作为一个或多个逻辑驱动器呈现给主机系统350的多个独立盘。在一些示例中,存储组装310包括虚拟盘簇(VBOD),其在物理存储驱动器与外部接口之间添加一个或多个抽象层。VBOD可以采用各种类型的磁记录技术,并且从特定记录技术抽象化前端交互。例如,叠瓦式磁记录(SMR)硬盘驱动器归因于关于数据的相邻轨道的叠瓦式性质而典型地具有关于随机写入的低效性。在SMR示例中,VBOD在仍然具有最终保存关联数据的底层SMR介质的同时,抽象化SMR驱动器并且允许随机写入和随机读取。可以采用其它记录技术,诸如并行磁记录(PMR)或热辅助磁记录(HAMR),包括其变型、改进和组合。

虽然图3中示出单条链路,但存储链路360可以包括一条或多条链路。存储链路360可以包括存储或盘接口,诸如串行连接ATA(SATA)、串行连接SCSI(SAS)、光纤信道、通用串行总线(USB)、SCSI、无限带宽(InfiniBand)、NVMe、外围组件互连高速(PCIe)、以太网、因特网协议(IP)或包括其变型和组合的其它并行或串行存储或外围接口。

主机系统350可以包括一个或多个计算和网络系统,诸如个人计算机、服务器、云存储系统、分组网络、管理系统或包括其组合和变型的其它计算机和网络系统。在操作中,除了可以包括控制指令、元数据检索操作、配置指令等的其它命令或操作之外,主机系统350通过存储链路360向存储组装310发出读取和写入命令或操作。类似地,除了诸如图形用户接口信息、状态信息、操作信息、驱动器搜寻信息、温度信息、功率信息、故障通知、警报等的其它信息之外,存储组装310可以通过存储链路360传送读取数据。

存储组装310包括多个硬盘驱动器(HDD)(即HDD 320-323),但可以包括任何数量的HDD。虽然图3指示用于HDD 320-323中的每一个的硬盘驱动器,但应当理解,HDD 320-323可以各自包括混合盘驱动器,该混合盘驱动器包括串联工作的旋转介质和固态存储组件。在另外的示例中,可以采用固态驱动器(SSD)、光学存储驱动器或其它非瞬时计算机可读存储介质。每个HDD 320-323通过一条或多条存储链路耦合到控制系统370,所述一条或多条存储链路在该示例中包括串行连接SCSI(SAS)链路,但可以采用其它链路类型。

每个HDD 320-323可以包括相似元件,并且为了示例性的目的,HDD 320-323的详细视图在图3中示出为包括旋转存储介质324、读取/写入头325以及可选地功率传感器330-333,但在HDD 320-323当中,变型是可能的。HDD 320-323可以包括另外的元件,诸如电枢、前置放大器、收发机、处理器、放大器、电机、伺服器、壳体、密封体、机箱以及其它电元件和机械元件。

存储组装310还包括电源345-346、功率监控模块347、控制系统370、一个或多个通风风扇340-341以及存储机箱312。控制系统370包括处理电路372、驱动器控制器373、存储系统374和主机接口(I/F)371。此外,控制系统370包括固件375,该固件375包括功率模块376和减缓模块377,该固件在至少由处理电路372运行时如以下描述的那样操作。

功率监控模块347包括一个或多个感测元件,以便测量存储组装310的功耗、电流汲取、电压电平或其它关联功率有关性质,诸如用于电源345-346中的每一个的输入电压/电流、或HDD 320-323和与存储组装310关联的其它组件的功耗。功率监控模块347可以包括电流感测元件、电压感测元件、功耗处理元件或其它功率感测元件。电流感测元件可以包括电流感测电阻器、运算放大器、比较器、磁电流感测元件、霍尔效应感测元件或其它电流感测元件。电压感测元件可以包括分压器、运算放大器或者其它模拟或数字电压感测元件。功率监控模块347还可以包括用于通过管理链路343将所测量的功率信息传递到诸如控制系统370的各种接口。除了其它元件之外,这些接口可以包括收发机、模数转换元件、放大器、滤波器、信号处理器。在一些示例中,功率监控模块347可以各自包括微控制器元件,以控制功率监控模块347的操作。

在图3中,每个HDD还可选地包括关联功率监控元件330-333,其可以包括与功率监控模块347相似的元件。这些功率监控器可以被包括在每个HDD的电元件或机械元件当中,并且可以测量与HDD关联的功耗。每个HDD还可以包括用以通过关联存储接口向控制系统370传送由关联功率监控元件330-333所确定的功率信息的装备和电路。

存储机箱312包括用以容纳并且在结构上支撑存储组装310的元件的结构元件。除了其它元件之外,机箱312可以包括底盘元件、外框、紧固元件、机架安装特征、通风特征。在很多示例中,机箱312还包括风扇340-341或其它冷却和通风元件,以便将气流提供给存储组装310的元件。机箱312还可以包括电源元件,以转换外部功率源或将各种形式的电功率提供给存储组装310的元件。风扇340-341可以包括任何风扇类型(诸如轴向流、离心和交叉流或其它风扇类型),包含关联格栅、翅片或其它有向元件,包含其组合和变型。

控制系统370处置对于存储组装310的存储操作,诸如在主机接口371中通过存储链路360从主机系统接收存储操作。可以在一个或多个写入操作中接收写入数据331,并且可以响应于一个或多个读取操作来将读取数据332提供给主机。接口可以被提供给主机系统(诸如单个(或冗余)以太网接口、SATA接口、SAS接口、光纤信道接口、USB接口、SCSI接口、无限频带接口、NVMe接口、PCIe接口或IP接口),该接口允许主机系统存取HDD组装的存储容量。控制系统370可以跨越存储组装310中的各个HDD建立任何数量的逻辑卷或逻辑存储单元,其可以包括跨盘式、冗余阵列、条带化(striping)或其它数据存储技术。

主机接口371包括用于通过至少链路360与主机系统、网络等进行通信的一个或多个存储接口。主机接口371可以包括收发机、接口电路、连接器、缓冲器、微控制器以及其它接口装备。主机接口371还可以包括一个或多个I/O队列,其通过链路360接收存储操作,并且缓冲这些存储操作以便由处理电路372进行处置。

控制系统370还包括处理电路372、驱动器控制器373和存储系统374。处理电路372可以包括从存储系统374检索并且运行固件375的一个或多个微处理器以及其它电路。虽然处理电路372可以实现于单个处理设备内,但也可以跨越在运行程序指令时协作的多个处理设备或子系统而分布。处理电路372的示例包括通用中央处理单元、专用处理器和逻辑器件以及任何其它类型的处理设备、其组合或变型。在一些示例中,处理电路372包括片上系统设备或微处理器设备(诸如Intel Atom处理器、MIPS微处理器等)。

驱动器控制器373可以包括一个或多个驱动器控制电路和处理器,其可以控制在存储组装310的各个HDD当中处置的各种数据冗余度。驱动器控制器373还包括HDD接口(诸如SAS接口),以耦合到存储组装310中的各个HDD。在一些示例中,驱动器控制器373和处理电路372通过外围组件互连高速(PCIe)接口或其它通信接口进行通信。在一些示例中,驱动器控制器373包括RAID控制器、RAID处理器或其它RAID电路。在其它示例中,驱动器控制器373处置特定记录技术(诸如SMR技术或HAMR技术)的管理。如在此所述,驱动器控制器373的元件和功能可以与处理电路313集成。

存储系统374可以包括由处理电路372或驱动器控制器373可读取的并且能够存储固件375的任何非瞬时计算机可读存储介质。存储系统374可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术实现的易失性和非易失性、可拆卸和不可拆卸介质。除了存储介质之外,在一些实现方式中,存储系统374还可以包括可以对固件373进行通信的通信介质。虽然存储系统374可以实现为单个存储设备,但也可以跨越共同定位或相对彼此分布的多个存储设备或子系统来得以实现。存储系统374可以包括能够与处理电路372进行通信的附加元件(诸如控制器)。存储系统374的存储介质的示例包括随机存取存储器、只读存储器、磁盘、光盘、闪存、SSD、相变存储器、磁盒、磁带、磁盘存储或其它磁存储设备或能够用于存储期望的信息并且能够由指令运行系统存取的任何其它介质及其任何组合或变型,或者任何其它类型的存储介质。

固件375、功率模块376和减缓模块377可以被实现于程序指令中,并且除了其它功能之外,它们可以在一般地由控制系统370或具体地由处理电路372运行时命令控制系统370或处理电路372如在此所描述的那样操作。固件375可以包括附加处理、程序或组件(诸如操作系统软件、数据库软件或应用软件)。固件375、功率模块376和减缓模块377还可以包括由处理电路372可运行的软件或某种其它形式的机器可读处理指令。

在至少一个实现方式中,程序指令可以包括第一程序指令,除了其它操作之外,该第一程序指令引导控制系统370处置数据存储设备当中的读取和写入操作、测量并且监控功耗信息或电源操作(功率模块376)、采取动作以更改存储组装310中的功耗(减缓模块377)(诸如改变吞吐量、更改搜寻曲线和性质、修改数据完整性检验处理或使HDD降速)。

通常,固件375在被加载到处理电路372并且运行时可以将处理电路372整体从通用计算系统转变为定制为如在此所描述地操作的专用计算系统。存储系统374上的编码固件375可以转变存储系统374的物理结构。在该说明书的不同实现方式中,物理结构的具体转变可以取决于各种因素。这些因素的示例可以包括但不限于用于实现存储系统374的存储介质的技术以及计算机存储介质被表征为主存储器件还是次存储器件。例如,如果计算机存储介质被实现为基于半导体的存储器,则当在固件375中对程序进行编码时,其可以转变半导体存储器的物理状态。例如,固件375可以转变构成半导体存储器的晶体管、电容器或其它分立式电路元件的状态。相似的转变可以关于磁介质或光学介质而产生。在不脱离本说明书的范围的情况下,物理介质的其它转变是可能的,其中前述示例仅提供为方便该讨论。

为了进一步示出系统300和存储组装310的操作,提出图4。图4是示出存储组装310的操作的方法的流程图。以下以括号方式引用图4的操作。在此关于图4所描述的各种操作可以由存储组装310中的元件(诸如控制系统370的处理电路372或驱动器控制器373、功率监控器347、电源345-346)的任何组合或由HDD 320-323的元件执行。

在图4中,存储组装310通过主机接口371和链路360接收读取和写入操作。这些读取和写入操作可以由主机系统350或其它外部系统发出。在写入操作中,写入数据(诸如图3中的写入数据361)与从主机系统350通过链路360接收到的一个或多个写入操作关联。写入数据可以包括针对在存储组装310的各HDD当中的指定的存储地址或存储位置处存储的用于由存储组装310进行存储的一个或多个数据块。存储组装310存储用于稍后检索的写入数据(诸如,用于通过链路360递送到主机系统350的读取数据362)。特定HDD或HDD集合可以被指定为处置对于特定逻辑存储单元(LUN)或存储分区的数据。读取或写入操作可以被引导到任何逻辑分区,并且指示存储地址、逻辑单元、分区或者指定读取或写入操作被引导到的存储组装310中的逻辑块的其它指示。

在存储组装310的操作期间(诸如在服务读取操作或写入操作期间),各个功率传感器监控(401)关于存储组装310的电源特性。在图3中,采用功率监控器347以及可选的分布式功率监控器330-333以测量关于存储组装310的元件的功率信息(诸如与电源345-346、HDD 320-323、控制系统370或风扇340-341有关的功耗、电压电平或电流汲取)。类似地,HDD 320-323中的每一个可以可选地包括功率传感器,诸如功率传感器330-333所指示的功率传感器。这些功率传感器330-333可以测量关于HDD 320-323中的关联的一个HDD的功耗或其它有关信息。

存储组装310标识电源345-346的一个或多个降级状况。在一些示例中,功率监控模块347监控一个或多个降级状况,并且将这些状况报告给控制系统370。在其它示例中,控制系统370监控一个或多个降级状况。在另外其它的示例中,HDD 320-323使用功率传感器330-333来监控一个或多个降级状况,并且将这些状况报告给控制系统370。可以采用使用存储组装310的各种功率信息监控元件进行监控的组合。

这些降级功率状况可以包括由操作402A所指示的存储组装310的电源中的一个或多个的故障或由操作402B所指示的对电源中的一个或多个的低输入电压。除了其它降级功率状况之外,另外的降级功率状况可以包括电源的部分故障、机箱312内的温度超过电源装备的温度阈值、短路的标识、或者出故障的或降级的功率转换或滤波电路。

可以由功率监控器347或控制系统370检测电源故障。可以由功率监控器347或控制系统370监控输出电压或电流,以检测这些输出电压或电流何时跌落到零级别或跌落到阈值级别以下。可以对于每个电源监控输入电流汲取,以在电流终止汲取时或在电流跌落到阈值级别以下时检测该电源的故障。这些各种所监控的状况可以指示电源的操作故障。

当电源出故障或终止产生功率输出时,存储组装310的其余电源可以继续以冗余方式为存储组装310的组件提供功率。存储组装310中可以包括一个以上冗余电源,并且存储组装310的所有电源可以在彼此之间并行地划分功率处置,使得一个电源的故障不中断HDD 320-323的操作。因此,当第一电源在存储组装310中出故障时,一个或多个其余的冗余电源可以继续将功率提供给存储组装310的元件。然而,由于少了一个可用于提供功率工作量的关联分担的电源,这些其余操作电源可能经历工作量的增加。这样可能导致对其余电源的增加的压力,并且在一些情况下导致“箝位”状况,在该“箝位”状况下一其余电源上的负载的快速增加可能使得该其余电源变为过载或甚至过早地出故障。

例如,当存储组装310中包括三个电源时,电源可以在它们之间划分用于功率转换和分发职责的工作量,并且各自将提供存储组装310的三分之一的功耗需求,但其它比例和工作量分配也是可能的。然而,当三个电源中的一个出故障时,那么其余电源必需供应存储组装310的所有功率。这种对于其余电源的负载的增加可能导致对于这些电源的增加的故障率,或在极端情况下将导致使得其余电源暂停操作或使得输出功率在容量方面快速减少的箝位状况。为了防止对于其余电源的工作量的增加或减缓其余电源上的过载,控制系统370可以进行对存储组装310的操作的调整,以控制存储组装310的功耗。

附加地或可替代地,可以监控外部输入级别,以确定电源的降级操作。可以监控输入电压,以标识输入电压何时跌落到期望的电压范围之外。当源输入电压跌落时,典型地必须从外部输入汲取更多的电流以产生相同功率输出。这种额外电流汲取可能增加由电源所生成的热量,从而将电源或关联组件增加到超过期望温度。类似地,当输入电压上升时,汲取更少的电流,但电压尖峰或浪涌保护元件可能耗散增加的功率并且变得过热或破坏性地出故障,从而有效地关闭关联电源。在电压高状况或电压低状况中,由于以上所列出的示例,并且还由于电源操作在小于对于功率转换电路和功率保护电路所选择的各种电组件和磁组件的理想范围下,因此电源的操作可能降级。

有利地,在此所描述的增强式操作提供控制系统370,以动态地调整存储组装310的功耗并且补偿存储组装310的电源中的一个或多个的降级性能。可以建立各种目标功耗阈值,以用于在降级操作期间使用。例如,当电源出故障时,可以建立功耗目标或阈值,以将存储组装310的功耗降低到电源模块中的运作的那些电源模块的预定标称功率输出级别。在其它示例中,当电源出故障时,那么可以按出故障的电源先前正在提供的量来降低存储组装310的功耗。在降级输入电压状况期间,可以减低存储组装310的功耗,以将电源的电流汲取维持在当前范围内,以防止电源的电路的过载。

一旦例如控制系统370或功率监控器347在存储组装310中检测到降级功率状况,控制系统370就可以对存储组装310中的组件(诸如HDD 320-323)进行调整,以减少存储组装310中的功耗。控制系统370选择(403)对于HDD 320-323的一个或多个动作,以改变存储组装310的功耗性质。除了其它动作之外,控制系统370可以从以下当中选择动作:增加HDD 320-323的HDD吞吐量(404)、调整HDD 320-323的JIT搜寻性能(405)、调整HDD 320-323的BMS数据完整性检验性质(HDD 320-323)或降速一个或多个HDD(407)。可以对于存储组装310的所选择的HDD或所有HDD单独地或组合地采取这些动作。

在对存储系统310的操作的第一示例调整中,控制系统370诸如通过调整HDD 320-323的吞吐量来调整HDD 320-323的性能(404)。该吞吐量目标可以对HDD 320-323的操作设置最大吞吐量或性能以限额(cap)HDD 320-323中的每一个的功耗。可以通过建立由HDD 320-323服务读取操作和写入操作的速率(诸如每秒的目标或最大读取或写入存储操作)来控制吞吐量。可以诸如通过在处理电路372、驱动器控制器373或主机接口371中管理操作的速率,由此在控制系统370中处置吞吐量的扼制。HDD 320-323也可以由控制系统370指令为遵从目标吞吐量。在采用其它数据存储驱动器(诸如固态驱动器以及包括固态存储器元件的混合驱动器)的示例中,也可以控制或扼制读取/写入吞吐量,以调整数据驱动器的功耗。

可以由控制系统370调整(405)JIT搜寻性能,以降低存储组装310中的HDD中的那些个体HDD的功率使用率。可以降低搜寻操作的速度,并且可以在搜寻距离的范围上建立速度的范围,以建立用于每个HDD的JIT搜寻曲线。可以在关联HDD的搜寻操作期间调整这些JIT搜寻曲线,以降低HDD 320-323的功率使用率。较低JIT搜寻级别由于具有较慢搜寻性能而在HDD中使用较少功率,而较高JIT搜寻级别由于具有较快搜寻性能而在HDD中使用较多功率。

如上所述,可以采用很多离散的JIT搜寻性能级别,并且可以根据存储组装310的期望功耗从各个离散的JIT搜寻性能级别当中选择JIT搜寻曲线。当期望较低功耗时,可以建立使用降低的搜寻性能的更积极的功率降低。控制系统370可以在不同的JIT搜寻性能级别当中进行选择,以在搜寻操作期间进一步降低HDD的功率使用率。例如,可以在基于功耗范围内的功耗当中选择十个不同的JIT级别,其中较低目标功耗与较慢搜寻性能相关,较高目标功耗与较快搜寻性能相关。

为了调整HDD 320-323的JIT级别或JIT搜寻性能,控制系统370可以首先确定期望的JIT搜寻性能级别,并且响应于此而通过关联存储接口将指令传送到HDD 320-323中的所选择的那些HDD。HDD 320-323可以接收这些指令并且实现这些指令,以根据由控制系统370所指示的接收到的JIT搜寻性能级别或JIT搜寻性能曲线来进行操作。

除了调整HDD 320-323的JIT搜寻性能之外,控制系统370还可以更改HDD 320-323的各种背景操作中的操作(诸如背景数据完整性检验)(406)。这些背景数据完整性检验(又被称为背景介质扫描(BMS)操作)是由HDD周期性地执行以验证已经写入到HDD的存储介质的数据的数据验证操作。这些BMS操作确保驻留在存储介质上的数据具有足够的数据完整性以在接收到读取操作的稍后时间得以读取。BMS操作可以周期性地并且在存储介质的各个存储区域上产生。典型地,关联HDD与任何外部控制系统无关地处置BMS操作。然而,BMS操作可能带来HDD的随着时间的更多功率耗散,并且促成个体HDD以及机箱312内的增加的功耗。在该示例中,控制系统370可以禁用HDD 320-323中的一个或多个的BMS操作。控制系统370可以通过关联HDD的存储接口传送指令,以指令该HDD禁用或启用该HDD的BMS操作。

调整HDD 320-323或数据组装310的吞吐量、JIT搜寻性能、BMS操作或其它性质可以带来机箱312内的较低功耗,并且因而在存储组装310由于出故障的电源或低输入电压而经历降级功率状况时带来电源的更好的操作状况。然而,诸如在极度降级的功率操作期间,可能存在并未良好地响应于这些调整和动作的功耗状况。在这些情况下,控制系统370可以采取其它动作。

HDD 320-323中的一个或多个可以降低功率。可替代地,HDD 320-323中的一个或多个可以诸如通过暂停旋转存储介质的旋转或旋动(也被称为降速)来使得关联存储介质暂停(407)。这样可以通过防止对关联存储介质的数据存取的代价来进一步减少关联HDD的功耗。然而,在某些降级功率操作事件中,如果功耗上升到某些级别以上,则装备故障可能是有风险的,并且期望功率降低或降速操作模式来保留数据或防止电源组件进一步降级。可以响应于其它功率减少措施并未将功耗减少到期望的阈值级别以下,来进入这种降速操作模式。在另外的示例中,可以调整风扇340-341中的一个或多个所提供的气流,以减少风扇340-341的功耗。例如,可以连同存储组装310的当前功耗一起监控当前风扇速度,并且如果风扇尚不处于最小功耗,则可以调整一个或多个风扇以通过降低风扇340-341中的一个或多个的旋转速度来降低气流速率。

可以跨越所有HDD 320-323或对于HDD 320-323中的单独选择的那些HDD执行由控制系统370所采取的用于控制存储组装310的功耗的各种动作。例如,如果在降级功率状况期间,存储组装310的功耗上升到阈值以上,则可以调整机箱312中的所有HDD的JIT搜寻曲线,以减少存储组装310的功耗。在其它示例中,控制系统370可以从正在经历提升的功耗的HDD 320-323当中标识特定一个或多个HDD,并且将动作中的一个或多个施加到这些特定HDD,以减少存储组装310的功耗。在又另外的示例中,特定HDD的功耗可以指示该特定HDD的故障,并且控制系统370可以通过降低该HDD的功率或将故障指示给操作者来隔离该HDD。

控制系统370继续监控电源操作和功耗,以标识期望的功率状况何时指示降级性能。当降级性能得以缓解时(诸如,当替换或修理电源时,或当输入电压返回到期望的范围内时),控制系统370可以将性能级别返回到先前级别,或将各个HDD的搜寻性能增加到先前性能。因此,控制系统370可以将存储组装310的功耗维持在预定范围内或阈值功耗以下,其中当电源经历降级性能时,使用上述动作和调整使搜寻性能降级以带来功耗下降,并且当电源未经历降级性能时,使搜寻性能增强以带来功耗上升。有利地,可以建立在出故障的电源或降低的输入电压的时间期间允许数据存储设备的连续操作的数据存储组装或数据存储阵列的增强式操作。

所包括的说明书和附图描述特定实施例,以教导本领域技术人员如何进行并且使用最佳模式。为了教导本发明原理的目的,已经简化或省略了一些传统方面。本领域技术人员应当理解落入本发明的范围内的来自这些实施例的适当变型。本领域技术人员还应当理解,以上所描述的特征可以通过各种方式组合,以形成多个实施例。因此,本发明不限于以上所描述的具体示例,而仅由权利要求及其等同物限定。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1