CN113934360B - 多存储设备生命周期管理*** - Google Patents

多存储设备生命周期管理*** Download PDF

Info

Publication number
CN113934360B
CN113934360B CN202010608005.8A CN202010608005A CN113934360B CN 113934360 B CN113934360 B CN 113934360B CN 202010608005 A CN202010608005 A CN 202010608005A CN 113934360 B CN113934360 B CN 113934360B
Authority
CN
China
Prior art keywords
storage device
estimated
life
workload
difference
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202010608005.8A
Other languages
English (en)
Other versions
CN113934360A (zh
Inventor
董玮
翟海防
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Dell Products LP
Original Assignee
Dell Products LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Dell Products LP filed Critical Dell Products LP
Priority to CN202010608005.8A priority Critical patent/CN113934360B/zh
Priority to US16/944,837 priority patent/US11422723B2/en
Publication of CN113934360A publication Critical patent/CN113934360A/zh
Application granted granted Critical
Publication of CN113934360B publication Critical patent/CN113934360B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0635Configuration or reconfiguration of storage systems by changing the path, e.g. traffic rerouting, path reconfiguration
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0683Plurality of storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • G06F3/0616Improving the reliability of storage systems in relation to life time, e.g. increasing Mean Time Between Failures [MTBF]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • G06F3/0631Configuration or reconfiguration of storage systems by allocating resources to storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2206/00Indexing scheme related to dedicated interfaces for computers
    • G06F2206/10Indexing scheme related to storage interfaces for computers, indexing schema related to group G06F3/06
    • G06F2206/1012Load balancing

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Debugging And Monitoring (AREA)
  • Software Systems (AREA)

Abstract

一种多存储设备生命周期管理***包括服务器计算***,所述服务器计算***具有多个设备和操作***引擎。所述操作***引擎识别第一设备的所估计第一设备剩余寿命,识别第二设备的所估计第二设备剩余寿命,并且确定所述所估计第一设备剩余寿命与所述所估计第二设备剩余寿命之间的差是否小于所估计多设备最小寿命终止差。如果小于,则所述计算***在所述第一设备与所述第二设备之间分配工作负荷操作,以便致使所述所估计第一设备剩余寿命与所述所估计第二设备剩余寿命之间的所述差大于或等于所述所估计多设备最小寿命终止差。

Description

多存储设备生命周期管理***
背景技术
本公开总体上涉及信息处置***,并且更特别地涉及管理用于信息处置***的多个存储设备的生命周期。
随着信息的价值和用途持续增长,个人和企业寻求处理和存储信息的另外的方式。用户可用的一个选项是信息处置***。信息处置***通常处理、编译、存储和/或传达用于商业、个人或其他目的的信息或数据,从而允许用户利用这些信息的价值。由于技术和信息处置需要和需求在不同的用户或应用程序之间有所不同,因此信息处置***也可关于以下方面有所不同:处置什么信息、如何处置信息、处理、存储或传达多少信息,以及处理、存储或传达信息可有多快和多高效。信息处置***中的变化允许信息处置***是通用的或者针对特定用户或特定用途(诸如财务交易处理、航空订票、企业数据存储或全球通信)进行配置。另外,信息处置***可包括可被配置来处理、存储和传达信息的多种硬件和软件部件,并且可包括一个或多个计算机***、数据存储***和联网***。
信息处置***有时利用具有多个存储设备的存储***。例如,服务器计算设备可包括具有多个存储设备的存储***,所述多个存储设备耦接到服务器计算设备中的背板并且可由例如固态驱动器(SSD)提供。此外,擦除编码技术可与所述存储设备一起使用,以便保护存储在所述存储设备上的数据。如本公开所属领域的技术人员将理解,擦除编码是一种数据保护技术,其中数据分解成片段,用冗余数据段进行扩展和编码,并跨不同的存储设备存储在服务器计算设备中。擦除编码使得能够使用关于存储在存储设备(例如,尚未发生故障、被损坏或以其他方式不可用的存储设备)上的所述数据的信息来重建被损坏或以其他方式不可用(例如,由于损坏、发生故障或以其他方式不可用的存储设备)的数据。然而,传统的存储***/擦除编码实现方式可能导致一些问题。
例如,在使用擦除编码的常规存储***中,跨存储***中的存储设备平衡使用存储***执行的工作负荷(例如,数据写入),并且在存储***中的存储设备发生故障的情况下,识别出所述故障存储设备并用替换存储设备替换所述故障存储设备,基于上面讨论的擦除编码技术,将存储在故障存储设备上的数据重建在替换存储设备上。然而,在一些情况下,识别和替换故障存储设备所需的时间可能相对较长,并且随着存储设备容量的增加,在替换存储设备上重构数据所需的时间也可能较长。例如,在当前的高速***部件互连(PCIe)第3代(Gen3)x4 32TB(terabyte)SSD上重构数据需要大约一天。因此,由于单个故障存储设备而导致的数据的识别、替换和重建将导致存储***的至少一部分有相对较长的“故障停机时间”(例如,存储***中的一些存储设备可在此类存储设备发生故障的情况下进入“只读”模式,这限制存储***性能,直到存储设备故障得到补救)。
在多个存储设备发生故障的情况下,上面讨论的问题可能加剧。例如,响应于故障存储设备而识别、替换和重建数据所需的时间量提高了存储***中的其他存储设备中的一个或多个在所述过程完成之前发生故障的可能性。为了解决这种可能性,常规存储***实现了另外的“擦除”存储设备,所述“擦除”存储设备能够在多存储设备发生故障的情况下将重建数据所需的信息存储在多个“主”存储设备上,但是此类解决方案增加了成本,并且与能够重建数据的“擦除”存储设备相比,仍然经受更多“主”存储设备发生故障的可能性。
因此,期望提供一种解决上面讨论的问题的多存储设备擦除编码***。
发明内容
根据一个实施方案,一种信息处置***(IHS)包括:处理***;以及存储器***,所述存储器***耦接到所述处理***并且包括指令,所述指令在由所述处理***执行时致使所述处理***提供设备生命周期管理引擎,所述设备生命周期管理引擎被配置来:识别第一设备的所估计第一设备剩余寿命;识别第二设备的所估计第二设备剩余寿命;确定所述所估计第一设备剩余寿命与所述所估计第二设备剩余寿命之间的差小于所估计多设备最小寿命终止差;并且响应于确定所述所估计第一设备剩余寿命与所述所估计第二设备剩余寿命之间的所述差小于所述所估计多设备最小寿命终止差,在所述第一设备与所述第二设备之间分配工作负荷操作,以便致使所述所估计第一设备剩余寿命与所述所估计第二设备剩余寿命之间的所述差大于或等于所述所估计多设备最小寿命终止差。
附图说明
图1是示出信息处置***(IHS)的实施方案的示意图。
图2是示出可使用本公开的多存储设备生命周期管理***的服务器计算***的实施方案的示意图。
图3是示出用于管理多个存储设备的生命周期的方法的实施方案的流程图。
图4A是示出在图3的方法期间图2的服务器计算***的操作的实施方案的示意图。
图4B是示出在图3的方法期间图2的服务器计算***的操作的实施方案的示意图。
图4C是示出在图3的方法期间图2的服务器计算***的操作的实施方案的示意图。
图4D是示出在图3的方法期间图2的服务器计算***的操作的实施方案的示意图。
图4E是示出在图3的方法期间图2的服务器计算***的操作的实施方案的示意图。
具体实施方式
出于本公开的目的,信息处置***可包括任何工具或工具集合,所述任何工具或工具集合可操作来计算、测算、确定、分类、处理、传输、接收、检索、发起、切换、存储、显示、传达、表明、检测、记录、再现、处置或利用用于商业、科学、控制或其他目的的任何形式的信息、情报或数据。例如,信息处置***可以是个人计算机(例如,台式计算机或膝上型计算机)、平板计算机、移动设备(例如,个人数字助理(PDA)或智能电话)、服务器(例如,刀片服务器或机架服务器)、网络存储设备或任何其他合适的设备,并且大小、形状、性能、功能和价格方面可有所不同。信息处置***可包括随机存取存储器(RAM)、一个或多个处理资源(诸如中央处理单元(CPU)或者硬件或软件控制逻辑)、ROM和/或其他类型的非易失性存储器。信息处置***的另外部件可包括一个或多个磁盘驱动器、用于与外部设备进行通信的一个或多个网络端口以及各种输入和输出(I/O)设备(诸如键盘、鼠标、触摸屏和视频显示器)。信息处置***还可包括可操作来在各种硬件部件之间传输通信的一条或多条总线。
在一个实施方案中,图1的IHS100包括连接到总线104的处理器102。总线104用作处理器102与IHS100的其他部件之间的连接。输入设备106耦接到处理器102以向处理器102提供输入。输入设备的实例可包括键盘、触摸屏、定点设备(诸如鼠标)、轨迹球和轨迹板和/或本领域中已知的多种其他输入设备。程序和数据存储在耦接到处理器102的大容量存储设备108上。大容量存储设备的实例可包括硬盘、光盘、磁光盘、固态存储设备和/或本领域中已知的多种其他大容量存储设备。IHS100还包括由视频控制器112耦接到处理器102的显示器110。***存储器114耦接到处理器102,以为处理器提供快速存储来促进处理器102执行计算机程序。***存储器的实例可包括随机存取存储器(RAM)设备(诸如动态RAM(DRAM)、同步DRAM(SDRAM))、固态存储器设备和/或本领域中已知的多种其他存储器设备。在实施方案中,机箱116容纳IHS100的部件中的一些或全部。应当理解,可以在上述部件与处理器102之间部署其他总线和中间电路,以促进部件与处理器102之间的互连。
现在参见图2,示出可使用本公开的多存储设备生命周期管理***的服务器计算***200的实施方案。在实施方案中,服务器计算***200可由上面参考图1讨论的IHS100提供,并且/或者可包括IHS 100的部件中的一些或全部。此外,虽然被示出和讨论为由服务器计算***提供,但是本公开所属领域的技术人员将认识到,下面讨论的服务器计算***200的功能可由被配置来如下面讨论的服务器计算***200类似地操作的其他计算设备提供。在所示的实施方案中,服务器计算***200包括容纳服务器计算***200的部件的机箱202,下面仅示出所述部件中的一些。例如,机箱202可容纳处理***(未示出,但是可包括上面参考图1讨论的处理器102)和存储器***(未示出,但是可包括上面参考图1讨论的存储器114),所述存储器***耦接到处理***并且包括指令,所述指令在由处理***执行时致使处理***提供被配置来执行设备生命周期管理引擎和/或下面讨论的服务器计算***的功能的设备生命周期管理引擎204。
在特定实例中,本公开的设备生命周期管理引擎204可由被配置来为服务器计算***200提供操作***的操作***引擎提供。因此,机箱202中的存储器***可包括指令,所述指令在由机箱202中的处理***执行时致使处理***提供被配置来执行设备生命周期管理引擎和/或下面讨论的服务器计算***的功能的操作***引擎。此外,在图2所示的实施方案中,设备生命周期管理引擎204包括设备生命周期监测子引擎204a,其被配置来执行设备生命周期监测子引擎和/或下面讨论的服务器计算***的功能;工作负荷权重生成子引擎204b,其被配置来执行工作负荷权重生成子引擎和/或下面讨论的服务器计算***的功能;以及工作负荷平衡子引擎204c,其被配置来执行工作负荷平衡子引擎和/或下面讨论的服务器计算***的功能。然而,虽然下面描述了执行特定功能的特定子引擎,但是本公开所属领域的技术人员将认识到,多种设备生命周期管理引擎和子引擎可执行多种常规功能(例如,操作***功能)和/或下面讨论的功能,同时也保持在本公开的范围内。
机箱202还可容纳存储***(未示出,但是可包括上面参考图1讨论的存储设备108),所述存储***耦接到设备生命周期管理引擎204和/或子引擎204a、204b和204c(例如,通过存储***与处理***之间的耦接),并且包括被配置来存储由设备生命周期管理引擎204和/或下面讨论的子引擎204a、204b和204c使用的任何信息的设备生命周期管理数据库206。机箱202还可容纳多个存储设备208a、208b、208c、208d且一直到208e,所述多个存储设备中的每一个耦接到设备生命周期管理引擎204和/或子引擎204a、204b和204c(例如,通过存储设备208a-208e与处理***之间的耦接)。在下面的特定实例中的一些中,存储设备208a-208e可由固态驱动器(SSD)提供,所述SSD通过服务器计算***200中的背板耦接到设备生命周期管理引擎204。然而,本公开所属领域的技术人员将认识到,其他类型的存储设备以及多种其他类型的设备可使其生命周期根据本公开的教导进行管理,同时也保持在本公开的范围内。因此,虽然已示出特定服务器计算***200,但是本公开所属领域的技术人员将认识到,服务器计算***(或根据本公开的教导以类似于下面就服务器计算***200描述的方式操作的其他计算设备)可包括多种部件和/或用于提供常规的服务器计算***功能以及下面讨论的功能的部件配置,同时也保持在本公开的范围内。
现在参见图3,示出用于管理多个存储设备的生命周期的方法300的实施方案。如下面所讨论,本公开的***和方法提供了对计算***中多个设备的生命周期的管理,使得所述设备中的任何一个的所估计寿命终止与其他设备中的任何一个的所估计寿命终止相比有所估计多设备最小寿命终止差,这试图确保在同一时间段内不会有两个(或更多个)设备达到其所估计寿命终止。例如,本公开的多存储设备生命周期管理***可包括使用多个设备的计算***,并且在服务器计算***中提供的设备生命周期管理引擎可操作来识别设备的所估计设备剩余寿命,并且确定所述设备中的任何两个之间的相应的所估计设备剩余寿命之间的差是否小于所估计多设备最小寿命终止差。响应于确定所述设备中的任何两个的所估计设备剩余寿命之间的差小于所估计多设备最小寿命终止差,设备生命周期管理引擎可操作来在所述设备之间分配工作负荷操作,以便致使所述设备中的任何两个的所估计设备剩余寿命之间的差大于或等于所估计多设备最小寿命终止差。如本公开所属领域的技术人员将理解,上面的计算***在多个设备上的操作性能操作来调整所述设备中的每一个的所估计设备剩余寿命,使得其与其他设备的所估计设备剩余寿命相差所估计多设备最小寿命终止差,因此使得任何设备的任何所估计寿命终止事件(例如,设备故障)能够在任何其他设备的所估计寿命终止事件之前被管理(例如,通过替换故障设备)。
在实施方案中,在方法300处或之前,设备生命周期管理引擎204可操作来接收存储设备208a-208e中的任何一个或全部的所估计设备剩余寿命。例如,图4A示出存储设备208a-208e中的每一个执行所估计设备剩余寿命传输操作400,以便向设备生命周期管理引擎204中的设备生命周期监测子引擎204a提供相应的所估计设备剩余寿命。还如图4A中所示出,在接收存储设备208a-208e中的任何一个或全部的所估计设备剩余寿命时,设备生命周期管理引擎204中的设备生命周期监测子引擎204a可操作来执行所估计设备剩余寿命存储操作402以将所述所估计设备剩余寿命存储在设备生命周期管理数据库206中。然而,虽然方法300被描述为包括设备生命周期管理引擎204中的设备生命周期监测子引擎204a接收存储设备208a-208e中的任何一个或全部的所估计设备剩余寿命,并且将所述所估计设备剩余寿命存储在设备生命周期管理数据库206中以供设备生命周期管理引擎204(下面讨论的)中的工作负荷权重生成子引擎204b稍后检索,但是本公开所属领域的技术人员将理解,设备生命周期监测子引擎204a可检索所估计设备剩余寿命并将其直接提供到工作负荷权重生成子引擎204b,同时也保持在本公开的范围内。
在特定实例中,存储设备208a-208e中的每一个可由包括自监测、分析和报告技术(S.M.A.R.T.)监测子***的SSD提供,所述S.M.A.R.T.监测子***被配置来检测和报告SSD可靠性的各种指标,以便例如允许预料SSD中即将发生的硬件故障。因此,存储设备208a-208e中的每一个可被配置来追踪和报告(例如,响应于按照预定时间表等的来自由操作***引擎提供的设备生命周期管理引擎204的查询)提供所述SSD的所估计设备剩余寿命的所述SSD的“使用百分比”。
如本公开所属领域的技术人员将理解,SSD的“使用百分比”可包括已使用的SSD的寿命百分比的SSD供应商特定估计,所述估计可基于SSD的实际使用情况以及SSD制造商对SSD的寿命的预测。在特定实施方案中,可基于使用SSD执行的程序/擦除循环来追踪SSD的实际使用情况,并且本公开所属领域的技术人员将理解,当前常规的三层单元(TLC)基于NAND快闪的SSD具有大约7,000个程序擦除循环的预测寿命。然而,虽然描述了特定使用情况和预测的SSD寿命度量,但是本公开所属领域的技术人员将理解,可基于也将落入本公开的范围内的其他度量来追踪存储设备和/或其他设备的使用情况和预测寿命。
因此,在一些实施方案中,SSD的“使用百分比”的值“100”可指示已消耗了所估计设备剩余寿命的100%,但是可能并不指示其相关联SSD的SSD故障。例如,可允许SSD的所估计设备剩余寿命的值超过“100”(例如,具有由“255”表示的大于254%的百分比,以便适应报告技术)。因此,虽然下面讨论的一些实施方案提供了替换已达到其“使用百分比”值的100%的SSD的通知,但是本公开所属领域的技术人员将认识到,可允许SSD超过其“使用百分比”值的100%,同时也保持在本公开的范围内。在一些实施方案中,每个SSD每一“通电”小时(即,当SSD中的控制器未处于睡眠状态时)可更新一次SSD的“使用百分比”。然而,按照其他时间表(例如,在启动时、每天等)更新存储设备208a-208e(或其他设备)的所估计设备剩余寿命也将落入本公开的范围内。
方法300可在框302处开始,在框302中,计算***识别第一设备的所估计第一设备剩余寿命。在方法300的第一迭代的此实施方案中,在框302处,设备生命周期管理引擎204可操作来选择存储设备208a作为第一设备以识别其所估计设备剩余寿命。例如,如图4B所示,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可操作来执行所估计设备剩余寿命检索操作404,以检索存储在设备生命周期管理数据库206中的存储设备208a的所估计设备剩余寿命,以便识别存储设备208a的所估计设备剩余寿命。然而,如上面所讨论,虽然存储设备208a的所估计设备剩余寿命被讨论为从设备生命周期管理数据库206检索,但是在框302处,设备生命周期监测子引擎204a可检索所估计设备剩余寿命并将其直接提供到工作负荷权重生成子引擎204b,同时也保持在本公开的范围内。
然后,方法300进行到框304,在框304中,计算***识别第二设备的所估计第二设备剩余寿命。在方法300的第一迭代的此实施方案中,在框304处,设备生命周期管理引擎204可识别存储设备208b-208e的所估计设备剩余寿命。类似地,如上面讨论且如图4B所示,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可操作来执行所估计设备剩余寿命检索操作404,以检索存储在设备生命周期管理数据库206中的存储设备208b-208e的所估计设备剩余寿命,以便识别存储设备208b-208e的所估计设备剩余寿命。然而,如上面所讨论,虽然存储设备208b-208e的所估计设备剩余寿命被讨论为从设备生命周期管理数据库206检索,但是在框304处,设备生命周期监测子引擎204a可检索所估计设备剩余寿命并将其直接提供到工作负荷权重生成子引擎204b,同时也保持在本公开的范围内。
然后,方法300进行到判定框306,在判定框306中,确定所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差是否小于所估计多设备最小寿命终止差。在实施方案中,在判定框306处并且在方法300的此第一迭代中,设备生命周期管理引擎204可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e的所估计设备剩余寿命中的每一个之间的差,并且确定所述差是否小于所估计多设备最小寿命终止差。例如,在判定框306处,可用已定义为提供最小时间量的所估计多设备最小寿命终止差对设备生命周期管理引擎204中的工作负荷权重生成子引擎204b进行编程(或者可通过设备生命周期管理数据库206进行访问),所述最小时间量确保由计算***使用的任何特定设备可在由所述计算设备使用的另一个设备变为不可用之前被替换。
在特定实例中,可确定故障存储设备所需的最小服务时间段(例如,执行故障存储设备的识别和替换操作的时间段)和替换存储设备(即,替换所述故障存储设备的存储设备)所需的最小数据重建时间段需要10天的最小时间段,以便识别、替换和重建发生故障的任何特定存储设备208a-208e上的数据。如本公开所属领域的技术人员将理解,在一些实施方案中,所估计多设备最小寿命终止差可提供时间段范围(例如,使用上面实例的10-12天),所述时间段范围确保可替换服务器计算***200所使用的发生故障的任何特定存储设备208a-208e,同时提供存储设备208a-208e中的任何两个之间的所估计寿命终止之间的时间量的上限。
因此,在判定框306处,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e中的每一个的所估计设备剩余寿命之间的差,并且确定所述差是否小于所估计多设备最小寿命终止差。继续上面提供的实例,并且如本公开所属领域的技术人员将理解,可将存储设备208a的“使用百分比”与存储设备208b-208e中的每一个的“使用百分比”之间的差与由所估计多设备最小寿命终止差提供的“百分比差”进行比较,所述“百分比差”转化为存储设备208a的寿命终止(例如,存储设备208a的100%所估计设备剩余寿命)与存储设备208b-208e中的每一个的寿命终止(例如,存储设备208b-208e的100%所估计设备剩余寿命)之间的最小时间量。
为了提供另一个特定实例,可能已确定存储设备208a的寿命终止与存储设备208b-208e中的每一个的寿命终止之间的10%“百分比差”以提供10天的最小时间段,所述10天的最小时间段确保由服务器计算***200使用的“较旧”存储设备可在由服务器计算设备200使用的“较新”存储设备发生故障之前被替换。因此,在框306的此实施方案中,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e中的每一个的所估计设备剩余寿命之间的差,并且确定所述差是否小于10%。然而,虽然已描述了具体所估计多设备最小寿命终止差和/或用于确定所估计多设备最小寿命终止差的技术,但是本公开所属领域的技术人员将理解,本公开的所估计多设备最小寿命终止差可基于也将落入本公开的范围内的多种因素中的任何一种来定义。
如果在判定框306处确定了所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差小于所估计多设备最小寿命终止差,则方法300进行到框308,在框308中,计算设备在第一设备与第二设备之间分配工作负荷操作,以便致使所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差大于或等于所估计多设备最小寿命终止差。在实施方案中,在框308处,设备生命周期管理引擎204可操作来基于存储设备208a的所估计设备剩余寿命与存储设备208b-208e的所估计设备剩余寿命相差小于所估计多设备最小寿命终止差来调整存储设备208a和存储设备208b-208e中的任何一个的工作负荷权重。如下面进一步详细讨论,在框308处调整的工作负荷权重被配置来定义工作负荷如何相对地分配给存储设备208a-208e,并且因此存储设备的工作负荷权重的增大可被配置来致使所述存储设备经历更多的程序/擦除循环,而存储设备的工作负荷权重的减小可被配置来致使所述存储设备经历更少的程序/擦除循环。然而,虽然描述了与程序/擦除循环相关的工作负荷权重的实例,但是本公开所属领域的技术人员将认识到工作负荷权重可如何对应于多种设备使用情况因素,同时也保持在本公开的范围内。
参考图4C,示出框308的实施方案,其中设备生命周期管理引擎204中的工作负荷权重生成子引擎204b执行工作负荷权重调整操作406,以便修改存储设备208a-208e中的任何一个的工作负荷权重。然而,虽然方法300被描述为包括设备生命周期管理引擎204中的工作负荷权重生成子引擎204b调整存储在设备生命周期管理数据库206中以供设备生命周期管理引擎204(下面讨论的)中的工作负荷平衡子引擎204c稍后检索的存储设备206a-206e的工作负荷权重,但是本公开所属领域的技术人员将理解,工作负荷权重生成子引擎204b可将调整后的工作负荷权重直接提供到工作负荷平衡子引擎204c,同时也保持在本公开的范围内。
使用存储设备208a和208b的实例以及上面讨论的10%的所估计多设备最小寿命终止差,在框302处,存储设备208a可能已被识别为具有75%的所估计设备剩余寿命,并且在框302处,存储设备208b可能已被识别为具有69%的所估计设备剩余寿命。因此,在判定框304处,存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差(例如,在此实例中为6%)将被确定为小于所估计多设备最小寿命终止差(10%),并且在框308的一些实施方案中,设备生命周期管理引擎204可操作来增大存储设备208a的工作负荷权重、减小存储设备208b的工作负荷权重和/或其组合。然而,虽然此实例讨论了增大具有较高当前使用率的存储设备(例如,存储设备208a)的工作负荷权重和/或减小具有较低当前使用率的存储设备(例如,存储设备208b)的工作负荷权重,但是本公开所属领域的技术人员将理解,可减小具有较高当前使用率的存储设备的工作负荷权重,并且/或者可增大具有较低当前使用率的存储设备的工作负荷权重,同时也保持在本公开的范围内。
在一些实施方案中,可对存储设备208a-208e的工作负荷权重进行归一化,使得所述工作负荷权重的总和等于1,并且当针对任何特定存储设备调整工作负荷权重时,可维持所述工作负荷权重总和。例如,在调整存储设备208a的工作负荷权重之前,存储设备208a-208e的工作负荷权重的总和可等于1,并且在调整存储设备208a的工作负荷权重之后,存储设备208a-208e的工作负荷权重的总和可不再等于1(例如,如果存储设备208a的工作负荷权重增大,则存储设备208a-208e的工作负荷权重的总和可等于1.05,如果存储设备208a的工作负荷权重减小,则存储设备208a-208e的工作负荷权重的总和可等于0.95等)。因此,在框308处,工作负荷权重生成子引擎204b可响应于修改存储设备208a的工作负荷而生成工作负荷权重调整系数(例如,所述系数等于[1/(工作负荷权重的总和)]),并且然后可将所述系数应用于存储设备208b-208e中的每一个的工作负荷权重,以确保存储设备208a-208e的工作负荷权重的总和再次等于1。
继续存储设备208a和208b的实例,在框308处,设备生命周期管理引擎204然后可将工作负荷分配到存储设备208a和/或存储设备208b,以便致使存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差大于或等于所估计多设备最小寿命终止差。例如,参考图4D,设备生命周期管理引擎204中的工作负荷平衡子引擎204c可执行工作负荷权重检索操作408,以便检索存储在设备生命周期管理数据库206中的存储设备208a和208b的工作负荷权重。然而,如上面所讨论,虽然存储设备208a和208b的工作负荷权重被讨论为从设备生命周期管理数据库206检索,但是在框308处,工作负荷权重生成子引擎204b可将存储设备208a和208b的工作负荷权重直接提供到工作负荷平衡子引擎204c,同时也保持在本公开的范围内。
继续参考图4D,设备生命周期管理引擎204中的工作负荷平衡子引擎204c然后可执行工作负荷分配操作410以基于存储设备208a和/或208b的工作负荷权重将工作负荷分配到存储设备208a和/或208b。继续上面提供的特定实例,存储设备208a和208b的工作负荷权重可导致将工作负荷分配到存储设备208a和208b的工作负荷分配操作410,所述工作负荷分配操作410被配置来致使存储设备208a的所估计设备剩余寿命增加(例如,从在框302处识别的75%增大)和/或存储设备208b的所估计设备剩余寿命减少(例如,从在框302处识别的69%减小),直到两者之间的差大于10%的所估计多设备最小寿命终止差。然而,如上面所讨论,虽然此实例讨论了增加针对具有较高当前使用率的存储设备(例如,存储设备208a)的工作负荷操作的分配和/或减少针对具有较低当前使用率的存储设备(例如,存储设备208b)的工作负荷操作的分配,但是本公开所属领域的技术人员将理解,可减少针对具有较高当前使用率的存储设备的工作负荷操作的分配,并且/或者可增加针对具有较低当前使用率的存储设备的工作负荷操作的分配,同时也保持在本公开的范围内。
在一些实施方案中,设备的工作负荷权重可被配置来致使所述设备变为“非活动”(例如,可用的最低工作负荷权重可导致其对应的设备不被使用)。例如,图4E示出可如何基于存储设备208b的工作负荷权重来使存储设备208b变得“非活动”(如要素412所指示),本公开所属领域的技术人员将理解,这可致使存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差相对快速地增大,直到所述差大于在上面的实例中讨论的10%的所估计多设备最小寿命终止差。在一些实施方案中,设备生命周期管理引擎204中的工作负荷平衡子引擎204c可被配置来确保在使所述存储设备中的任何一个“非活动”之前,剩余存储设备能够处置当前工作负荷,并且可被配置来在确定当前工作负荷处于当前活动的存储设备能够处置的阈值内的情况下“重新激活”所述存储设备中的任何一个(即,以便允许所述存储设备处置当前工作负荷)。
因此,本公开所属领域的技术人员将理解,还可执行上面讨论的如何针对存储设备208a和208b执行的操作,以确保存储设备208a的所估计设备剩余寿命和存储设备208c-208e中的每一个的所估计设备剩余寿命大于所估计多设备最小寿命终止差,因此确保存储设备208a的所估计寿命终止将在存储设备208b-208e中的任何一个的所估计寿命终止之前(或之后)的10天的最小时间段发生,本公开所属领域的技术人员将认识到,这提供了一些保证,存储设备208a基于其他存储设备208b-208e的所估计寿命终止将不会在其他存储设备208b-208e中的任何一个的10天内发生故障。
然后,方法300进行到框310,在框310中,计算***选择不同的第一设备。在实施方案中,在框310处,设备生命周期管理引擎204可操作来选择存储设备208b作为方法300中讨论的“第一设备”,并且然后方法300返回到框302。因此,然后可在方法300的第二迭代中针对存储设备208b执行上面讨论的在方法300的第一迭代中针对存储设备208a(即,“第一设备”)执行的操作,本公开所属领域的技术人员将认识到,这操作来确保存储设备208b的所估计设备剩余寿命以及存储设备208a和208c-208e中的任何一个的所估计设备剩余寿命大于所估计多设备最小寿命终止差,因此确保存储设备208b的所估计寿命终止将在存储设备208a和208c-208e中的任何一个的所估计寿命终止之前(或之后)的10天的最小时间段发生,并且提供了一些保证,存储设备208b将不会在其他存储设备208a和208c-208e中的任何一个的10天内发生故障。此外,可针对存储设备208c、208d且一直到208e中的每一个执行类似的操作,在这之后,每个存储设备208a-208e将具有与其他存储设备中的每一个相差至少10天的所估计寿命终止。在一些实施方案(例如,不同存储设备的所估计寿命终止之间的相对较大差不是问题的实施方案)中,然后方法300可结束。
然而,在一些实施方案中,如果在判定框306处确定所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差不小于所估计多设备最小寿命终止差,则方法300进行到判定框312,在框312中,确定所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差是否大于所估计多设备最小寿命终止差。在继续上面讨论的方法300的第一迭代的此实施方案中,在判定框312处,设备生命周期管理引擎204可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e的所估计设备剩余寿命中的每一个之间的差大于所估计多设备最小寿命终止差。如上面所讨论,可用所估计多设备最小寿命终止差对设备生命周期管理引擎204中的工作负荷权重生成子引擎204b进行编程(或者可通过设备生命周期管理数据库206进行访问),并且在判定框312中,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e中的每一个的所估计设备剩余寿命之间的差,并且确定所述差是否大于所估计多设备最小寿命终止差。
继续上面提供的特定实例,所估计多设备最小寿命终止差可提供由存储设备的寿命终止之间的12%“百分比差”满足的时间段范围(例如,使用上面实例的10-12天),所述12%“百分比差”已确定为在任何两个存储设备的寿命终止之间提供12天的最大所需时间段。因此,在框312的此实施方案中,设备生命周期管理引擎204中的工作负荷权重生成子引擎204b可比较存储设备208a的所估计设备剩余寿命与存储设备208b-208e中的每一个的所估计设备剩余寿命之间的差,并且确定所述差是否大于12%。然而,虽然已描述了具体所估计多设备最小寿命终止差和/或用于确定所估计多设备最小寿命差的技术,但是本公开所属领域的技术人员将理解,本公开的所估计多设备最小寿命终止差可基于也将落入本公开的范围内的多种因素中的任何一种来定义。
如果在判定框312处确定了所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差大于所估计多设备最小寿命终止差,则方法300进行到框314,在框314中,计算设备在第一设备与第二设备之间分配工作负荷操作,以便致使所估计第一设备剩余寿命与所估计第二设备剩余寿命之间的差小于或等于所估计多设备最小寿命终止差。在实施方案中,在框314处,设备生命周期管理引擎204可操作来基于存储设备208a的所估计设备剩余寿命与存储设备208b-208e的所估计设备剩余寿命相差多于所估计多设备最小寿命终止差来调整存储设备208a和存储设备208b-208e中的任何一个的工作负荷权重。类似地,如上面所讨论,在框314处调整的工作负荷权重被配置来定义工作负荷如何相对地分配给存储设备208a-208e,并且因此存储设备的工作负荷权重的增大可被配置来致使所述存储设备经历更多的程序/擦除循环,而存储设备的工作负荷权重的减小可被配置来致使存储设备经历更少的程序/擦除循环。然而,虽然描述了与程序/擦除循环相关的工作负荷权重的实例,但是本公开所属领域的技术人员将认识到工作负荷权重可如何对应于多种设备使用情况因素,同时也保持在本公开的范围内。
再次参考图4C,示出框314的实施方案,其中设备生命周期管理引擎204中的工作负荷权重生成子引擎204b执行工作负荷权重调整操作406,以便修改存储设备208a-208e中的任何一个的工作负荷权重。然而,虽然方法300被描述为包括设备生命周期管理引擎204中的工作负荷权重生成子引擎204b调整存储在设备生命周期管理数据库206中以供设备生命周期管理引擎204(上面讨论的)中的工作负荷平衡子引擎204c稍后检索的存储设备206a-206e的工作负荷权重,但是本公开所属领域的技术人员将理解,工作负荷权重生成子引擎204b可将调整后的工作负荷权重直接提供到工作负荷平衡子引擎204c,同时也保持在本公开的范围内。
使用存储设备208a和208b的实例以及上面讨论的10-12%的所估计多设备最小寿命终止差,在框302处,存储设备208a可能已被识别为具有82%的所估计设备剩余寿命,并且在框302处,存储设备208b可能已被识别为具有64%的所估计设备剩余寿命。因此,在判定框304处,存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差(例如,在此实例中为18%)将被确定为大于所估计多设备最小寿命终止差(例如,最大为12%),并且在框314的一些实施方案中,设备生命周期管理引擎204可操作来减小存储设备208a的工作负荷权重、增大存储设备208b的工作负荷权重和/或其组合。然而,虽然此实例讨论了减小具有较高当前使用率的存储设备(例如,存储设备208a)的工作负荷权重和/或增大具有较低当前使用率的存储设备(例如,存储设备208b)的工作负荷权重,但是本公开所属领域的技术人员将理解,可减小具有较高当前使用率的存储设备的工作负荷权重,并且/或者可增大具有较低当前使用率的存储设备的工作负荷权重,同时也保持在本公开的范围内。
类似地,如上面所讨论,在一些实施方案中,可对存储设备208a-208e的工作负荷权重进行归一化,使得所述工作负荷权重的总和等于1,并且当针对任何特定存储设备调整工作负荷权重时,可维持所述工作负荷权重总和。例如,在调整存储设备208a的工作负荷权重之前,存储设备208a-208e的工作负荷权重的总和可等于1,并且在调整存储设备208a的工作负荷权重之后,存储设备208a-208e的工作负荷权重的总和可不再等于1(例如,如果存储设备208a的工作负荷权重增大,则存储设备208a-208e的工作负荷权重的总和可等于1.05,如果存储设备208a的工作负荷权重减小,则存储设备208a-208e的工作负荷权重的总和可等于0.95等)。因此,在框314处,工作负荷权重生成子引擎204b可响应于修改存储设备208a的工作负荷而生成工作负荷权重调整系数(例如,所述系数等于[1/(工作负荷权重的总和)]),并且然后可将所述系数应用于存储设备208b-208e中的每一个的工作负荷权重,以确保存储设备208a-208e的工作负荷权重的总和再次等于1。
继续存储设备208a和208b的实例,在框308处,设备生命周期管理引擎204然后可将工作负荷分配到存储设备208a和/或存储设备208b,以便致使存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差小于或等于所估计多设备最小寿命终止差。例如,再次参考图4D,设备生命周期管理引擎204中的工作负荷平衡子引擎204c可执行工作负荷权重检索操作408,以便检索存储在设备生命周期管理数据库206中的存储设备208a和208b的工作负荷权重。然而,如上面所讨论,虽然存储设备208a和208b的工作负荷权重被讨论为从设备生命周期管理数据库206检索,但是在框308处,工作负荷权重生成子引擎204b可将存储设备208a和208b的工作负荷权重直接提供到工作负荷平衡子引擎204c,同时也保持在本公开的范围内。
再次参考图4D,设备生命周期管理引擎204中的工作负荷平衡子引擎204c然后可执行工作负荷分配操作410以基于存储设备208a和208b的工作负荷权重将工作负荷分配到存储设备208a和208b。继续上面提供的特定实例,存储设备208a和208b的工作负荷权重可提供将工作负荷分配到存储设备208a和208b的工作负荷分配操作410,所述工作负荷分配操作410被配置来致使存储设备208a的所估计设备剩余寿命减少(例如,从在框302处识别的82%减小)和/或存储设备208b的所估计设备剩余寿命增加(例如,从在框302处识别的64%增大),直到两者之间的差小于或等于12%的所估计多设备最小寿命终止差。然而,如上面所讨论,虽然此实例讨论了减少针对具有较高当前使用率的存储设备(例如,存储设备208a)的工作负荷操作的分配和/或增加针对具有较低当前使用率的存储设备(例如,存储设备208b)的工作负荷操作的分配,但是本公开所属领域的技术人员将理解,可减少针对具有较高当前使用率的存储设备的工作负荷操作的分配,并且/或者可增加针对具有较低当前使用率的存储设备的工作负荷操作的分配,同时也保持在本公开的范围内。
类似地,如上面所讨论,在一些实施方案中,设备的工作负荷权重可被配置来致使所述设备变为“非活动”(例如,可用的最低工作负荷权重可导致其对应的设备不被使用)。类似地,如图4E所示,此实施方案中的存储设备208a可基于其工作负荷权重变得“非活动”,本公开所属领域的技术人员将理解,这可致使存储设备208a的所估计设备剩余寿命与存储设备208b的所估计设备剩余寿命之间的差相对快速地减小,直到所述差小于或等于12%的所估计多设备最小寿命终止差。类似地,如上面所讨论,设备生命周期管理引擎204中的工作负荷平衡子引擎204c可被配置来确保在使所述存储设备中的任何一个“非活动”之前,剩余的存储设备能够处置当前工作负荷,并且可被配置来在确定当前工作负荷处于当前活动的存储设备能够处置的阈值内的情况下“重新激活”所述存储设备中的任何一个(即,以便允许所述存储设备处置当前工作负荷)。
因此,本公开所属领域的技术人员将理解,还可执行上面讨论的如何(在一些实施方案中)针对存储设备208a和208b执行的操作,以确保存储设备208a的所估计设备剩余寿命和存储设备208c-208e中的每一个的所估计设备剩余寿命小于或等于所估计多设备最小寿命终止差,因此确保存储设备208a的所估计寿命终止将在存储设备208b-208e中的任何一个的所估计寿命终止之前(或之后)的10-12天之间发生,本公开所属领域的技术人员将认识到,这提供了一些保证,存储设备208a基于其他存储设备208b-208e的所估计寿命终止将在其他存储设备208b-208e中的任何一个的10-12天内发生故障。
然后,方法300进行到框310,在框310中,计算***选择不同的第一设备。类似地,如上面所讨论,在框310处,设备生命周期管理引擎204可操作来选择存储设备208b作为方法300中讨论的“第一设备”,并且然后方法300返回到框302。因此,然后可在方法300的第二迭代中针对存储设备208b执行上面讨论的在方法300的第一迭代中针对存储设备208a(即,“第一设备”)执行的操作,本公开所属领域的技术人员将认识到,这操作来确保存储设备208b的所估计设备剩余寿命以及存储设备208a和208c-208e中的任何一个的所估计设备剩余寿命在所估计多设备最小寿命终止差内,因此确保存储设备208b的所估计寿命终止将在存储设备208a和208c-208e中的任何一个的所估计寿命终止之前(或之后)的10-12天内发生,并且本公开所属领域的技术人员将认识到,这提供了一些保证,存储设备208b基于其他存储设备208a和208c-208e的所估计寿命终止将在其他存储设备208a和208c-208e中的任何一个的10-12天内发生故障。此外,可针对存储设备208c、208d和至多208e中的每一个执行类似的操作,在这之后,每个存储设备208a-208e将具有与其他存储设备中的每一个相差10-12天的所估计寿命终止。然而,虽然本文描述了10-12天的特定寿命终止分隔,但是确保由计算***使用的多个设备的任何生命周期终止分隔都逐个地并且以允许所述多个设备中的每一个在另一个设备达到其估计寿命之前被替换的方式到达所述多个设备的估计寿命的终点,同时也将落入本公开的范围内。
因此,在一些实施方案中,服务器计算***200中的设备生命周期管理引擎204可被配置来当存储设备208a-208e中的任何一个已达到其所估计寿命终止时通知用户(例如,通知“停用”已使用长达其估计寿命的存储设备,尽管所述存储设备继续起作用),这允许用户实行针对所述“停用”存储设备的替换过程,保证没有一个其他存储设备将达到其相应的寿命终止,直到针对“停用”存储设备的替换过程已完成。因此,本公开所属领域的技术人员将理解,服务器计算***200中的设备生命周期管理引擎204可被配置来显示针对存储设备的“寿命终止”通知,生成并传输对“停用”存储设备的自动化服务请求,生成并传输自动化替换存储设备请求,执行自动化数据备份操作,并且/或者基于上述的管理的存储设备生命周期功能来执行任何其他操作。
如本公开所属领域的技术人员将明白,上面讨论的存储设备208a-208e的生命周期管理允许擦除编码技术可与所述存储设备208a-208e一起使用,以便保护存储在所述存储设备208a-208e上的数据,而没有与常规存储***相关联的问题。因此,数据可分解成片段,用冗余数据段进行扩展和编码,并跨不同的存储设备208a-208e存储在服务器计算设备200中,并且使用关于存储在存储设备(例如,尚未发生故障、被损坏或以其他方式不可用的存储设备)上的所述数据的信息来重建被损坏或以其他方式不可用(例如,由于损坏、发生故障或以其他方式不可用的存储设备)的数据。此外,在服务器计算***200中的存储设备发生故障的情况下,可识别并用替换存储设备替换故障存储设备,并且可使用上面讨论的擦除编码技术在替换存储设备上重建存储在故障存储设备上的数据。如本公开所属领域的技术人员将理解,使用识别和替换故障存储设备所需的时间以及在替换存储设备上重建数据所需的时间来定义所估计多设备最小寿命终止差提供了保证,在其他存储设备208a-208e中的任何一个达到其所估计寿命终止之前,将可有足够的时间用来替换发生故障的存储设备208a-208e中的任何一个。
因此,已描述了***和方法,所述***和方法提供了对服务器中多个SSD的生命周期的管理,使得所述SSD中的任何一个的所估计寿命终止与其他SSD中的任何一个的所估计寿命终止相比有所估计多SSD最小寿命终止差,这试图确保在同一时间段内将不会有两个(或更多个)SSD达到其寿命终止。例如,本公开的多SSD生命周期管理***可包括使用多个SSD的服务器,并且在服务器中提供的SSD生命周期管理引擎可操作来识别SSD的所估计SSD剩余寿命,并且确定所述SSD中的任何两个的相应的所估计SSD剩余寿命之间的差是否小于所估计多SSD最小寿命终止差。响应于确定就所述SSD中的任何两个的所估计SSD剩余寿命之间的差小于所估计多SSD最小寿命终止差,SSD生命周期管理引擎可操作来在所述SSD之间分配工作负荷操作,以便致使所述SSD的所估计SSD剩余寿命之间的差大于或等于所估计多SSD最小寿命终止差。如本公开所属领域的技术人员将理解,上面的服务器在多个SSD中的每一个上的操作性能操作来调整所述SSD中的每一个的所估计SSD剩余寿命,使得其与其他SSD的所估计SSD剩余寿命相差所估计多SSD最小寿命终止差,因此使得任何SSD的任何寿命终止事件(例如,SSD故障)能够在任何其他SSD的寿命终止事件之前被管理(例如,通过替换故障SSD)。
尽管已经示出并描述了说明性实施方案,但是在前述公开中以及在一些情况下,可以考虑宽范围的修改、改变和替代,可采用实施方案的一些特征而不对应地使用其他特征。因此,应当宽泛地并以与本文所公开的实施方案的范围一致的方式来解释所附权利要求。

Claims (20)

1.一种多存储设备生命周期管理***,其包括:
服务器计算***;
多个存储设备,所述多个存储设备包括在所述服务器计算***中;以及
操作***引擎,所述操作***引擎提供在所述服务器计算***中,耦接到所述多个存储设备,并且被配置来:
识别包括在所述多个存储设备中的第一存储设备的所估计第一存储设备剩余寿命;
识别包括在所述多个存储设备中的第二存储设备的所估计第二存储设备剩余寿命;
确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的第一差小于所估计多存储设备最小寿命终止差的下限,其中,所述所估计多存储设备最小寿命终止差为确保所述多个存储设备中的任一存储设备在所述多个存储设备中的另一存储设备变为不可用之前被替换的最小时间量,并且所述所估计多存储设备最小寿命终止差为时间段范围,所述所估计多存储设备最小寿命终止差的上限为所述时间段范围的上限,所述所估计多存储设备最小寿命终止差的所述下限为所述时间段范围的下限;并且
响应于确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的所述第一差小于所述所估计多存储设备最小寿命终止差的所述下限:
调整所述第一存储设备与所述第二存储设备的工作负荷权重,以便致使所述第一差大于或等于所述所估计多存储设备最小寿命终止差的所述下限,
其中,调整所述第一存储设备和所述第二存储设备的所述工作负荷权重包括:
i)增加所述第一存储设备的第一存储设备工作负荷权重,以便致使所述第一存储设备的程序/擦除循环增加;以及
ii)减小所述第二存储设备的第二存储设备工作负荷权重,以便致使所述第二存储设备的程序/擦除循环减小,
并且其中,在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之前以及在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之后,维持所述第一存储设备和所述第二存储设备的第一归一化的组合的工作负荷权重。
2.如权利要求1所述的***,其中所述第一存储设备和所述第二存储设备中的每一者均是固态驱动器存储设备。
3.如权利要求1所述的***,其中所述所估计多存储设备最小寿命终止差为10%。
4.如权利要求1所述的***,其中所述减小所述第二存储设备的第二存储设备工作负荷权重包括:使所述第二存储设备处于非活动状态。
5.如权利要求1所述的***,其中所述操作***引擎被配置来:
识别包括在所述多个存储设备中的第三存储设备的所估计第三存储设备剩余寿命;
识别包括在所述多个存储设备中的第四存储设备的所估计第四存储设备剩余寿命;
确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的第二差大于所述所估计多存储设备最小寿命终止差的所述上限;并且
响应于确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的所述第二差大于所述所估计多存储设备最小寿命终止差的所述上限:
调整所述第三存储设备与所述第四存储设备的工作负荷权重,以便致使所述第二差小于或等于所述所估计多存储设备最小寿命终止差的所述上限,
其中,调整所述第三存储设备和所述第四存储设备的所述工作负荷权重包括:
i)减小所述第三存储设备的第三存储设备工作负荷权重,以便致使所述第三存储设备的程序/擦除循环减小;以及
ii)增加所述第四存储设备的第四存储设备工作负荷权重,以便致使所述第四存储设备的程序/擦除循环增加,
并且其中,在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之前以及在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之后,维持所述第三存储设备和所述第四存储设备的第二归一化的组合的工作负荷权重。
6.如权利要求1所述的***,其中所估计多存储设备最小寿命终止差限定任何两个存储设备的寿命终止之间的预定天数。
7.一种信息处置***,其包括:
处理***;以及
存储器***,所述存储器***耦接到所述处理***并且包括指令,所述指令在由所述处理***执行时致使所述处理***提供存储设备生命周期管理引擎,所述设备生命周期管理引擎被配置来:
识别第一存储设备的所估计第一存储设备剩余寿命;
识别第二存储设备的所估计第二存储设备剩余寿命;
确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的第一差小于所估计多存储设备最小寿命终止差的下限,其中,所述所估计多存储设备最小寿命终止差为确保与所述存储器***相关的任一存储设备在与所述存储器***相关的另一存储设备变为不可用之前被替换的最小时间量,并且所述所估计多存储设备最小寿命终止差为时间段范围,所述所估计多存储设备最小寿命终止差的上限为所述时间段范围的上限,所述所估计多存储设备最小寿命终止差的下限为所述时间段范围的下限;并且
响应于确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的所述第一差小于所述所估计多存储设备最小寿命终止差的所述下限:
调整所述第一存储设备与所述第二存储设备的工作负荷权重,以便致使所述第一差大于或等于所述所估计多存储设备最小寿命终止差的所述下限,
其中,调整所述第一存储设备和所述第二存储设备的所述工作负荷权重包括:
i)增加所述第一存储设备的第一存储设备工作负荷权重,以便致使所述第一存储设备的程序/擦除循环增加;以及
ii)减小所述第二存储设备的第二存储设备工作负荷权重,以便致使所述第二存储设备的程序/擦除循环减小,
并且其中,在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之前以及在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之后,维持所述第一存储设备和所述第二存储设备的第一归一化的组合的工作负荷权重。
8.如权利要求7所述的信息处置***,其中所述第一存储设备和所述第二存储设备中的每一者均是固态驱动器存储设备。
9.如权利要求7所述的信息处置***,其中所述所估计多存储设备最小寿命终止差为10%。
10.如权利要求7所述的信息处置***,其中所述减小所述第二存储设备的第二存储设备工作负荷权重包括:使所述第二存储设备处于非活动状态。
11.如权利要求7所述的信息处置***,其中所述存储设备生命周期管理引擎被配置来:
识别第三存储设备的所估计第三存储设备剩余寿命;
识别第四存储设备的所估计第四存储设备剩余寿命;
确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的第二差大于所述所估计多存储设备最小寿命终止差的所述上限;并且
响应于确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的所述第二差大于所述所估计多存储设备最小寿命终止差的所述上限:
调整所述第三存储设备与所述第四存储设备的工作负荷权重,以便致使所述第二差小于或等于所述所估计多存储设备最小寿命终止差的所述上限,
其中,调整所述第三存储设备和所述第四存储设备的所述工作负荷权重包括:
i)减小所述第三存储设备的第三存储设备工作负荷权重,以便致使所述第三存储设备的程序/擦除循环减小;以及
ii)增加所述第四存储设备的第四存储设备工作负荷权重,以便致使所述第四存储设备的程序/擦除循环增加,
并且其中,在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之前以及在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之后,维持所述第三存储设备和所述第四存储设备的第二归一化的组合的工作负荷权重。
12.如权利要求7所述的信息处置***,其中所估计多存储设备最小寿命终止差限定任何两个存储设备的寿命终止之间的预定天数。
13.如权利要求7所述的信息处置***,其中所述所估计第一存储设备剩余寿命是基于由所述第一存储设备执行的第一工作负荷操作和存储在所述第一存储设备上的第一预测生命期限,并且其中所述所估计第二存储设备剩余寿命是基于由所述第二存储设备执行的第二工作负荷操作和存储在所述第二存储设备上的第二预测生命期限。
14.一种用于管理多个存储设备的生命周期的方法,其包括:
由计算***识别由所述计算***使用的第一存储设备的所估计第一存储设备剩余寿命;
由所述计算***识别由所述计算***使用的第二存储设备的所估计第二存储设备剩余寿命;
由所述计算***确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的第一差小于所估计多存储设备最小寿命终止差的下限,其中,所述所估计多存储设备最小寿命终止差为确保所述多个存储设备中的任一存储设备在所述多个存储设备中的另一存储设备变为不可用之前被替换的最小时间量,并且所述所估计多存储设备最小寿命终止差为时间段范围,所述所估计多存储设备最小寿命终止差的上限为所述时间段范围的上限,所述所估计多存储设备最小寿命终止差的下限为所述时间段范围的下限;以及
响应于确定所述所估计第一存储设备剩余寿命与所述所估计第二存储设备剩余寿命之间测量的所述第一差小于所述所估计多存储设备最小寿命终止差的所述下限:
调整所述第一存储设备与所述第二存储设备的工作负荷权重,以便致使所述第一差大于或等于所述所估计多存储设备最小寿命终止差的所述下限,
其中,调整所述第一存储设备和所述第二存储设备的所述工作负荷权重包括:
i)增加所述第一存储设备的第一存储设备工作负荷权重,以便致使所述第一存储设备的程序/擦除循环增加;以及
ii)减小所述第二存储设备的第二存储设备工作负荷权重,以便致使所述第二存储设备的程序/擦除循环减小,
并且其中,在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之前以及在增加所述第一存储设备工作负荷权重和减小所述第二存储设备工作负荷权重之后,维持所述第一存储设备和所述第二存储设备的第一归一化的组合的工作负荷权重。
15.如权利要求14所述的方法,其中所述第一存储设备和所述第二存储设备中的每一者均是固态驱动器存储设备。
16.如权利要求14所述的***,其中所述所估计多存储设备最小寿命终止差为10%。
17.如权利要求14所述的方法,其中所述减小所述第二存储设备的第二存储设备工作负荷权重包括:使所述第二存储设备处于非活动状态。
18.如权利要求14所述的方法,其还包括:
由所述计算***识别第三存储设备的所估计第三存储设备剩余寿命;
由所述计算***识别第四存储设备的所估计第四存储设备剩余寿命;
由所述计算***确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的第二差大于所述所估计多存储设备最小寿命终止差的所述上限;以及
响应于确定所述所估计第三存储设备剩余寿命与所述所估计第四存储设备剩余寿命之间测量的所述第二差大于所述所估计多存储设备最小寿命终止差的所述上限:
调整所述第三存储设备与所述第四存储设备之间分配的工作负荷权重,以便致使所述第二差小于或等于所述所估计多存储设备最小寿命终止差的所述上限,
其中,调整所述第三存储设备和所述第四存储设备的工作负荷权重包括:
i)减小所述第三存储设备的第三存储设备工作负荷权重,以便致使所述第三存储设备的程序/擦除循环减小;以及
ii)增加所述第四存储设备的第四存储设备工作负荷权重,以便致使所述第四存储设备的程序/擦除循环增加,
并且其中,在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之前以及在减小所述第三存储设备工作负荷权重和增加所述第四存储设备工作负荷权重之后,维持所述第三存储设备和所述第四存储设备的第二归一化的组合的工作负荷权重。
19.如权利要求18所述的方法,其中所估计多存储设备最小寿命终止差限定任何两个存储设备的寿命终止之间的预定天数。
20.如权利要求18所述的方法,其中所述所估计第一存储设备剩余寿命是基于由所述第一存储设备执行的第一工作负荷操作和存储在所述第一存储设备上的第一预测生命期限,并且其中所述所估计第二存储设备剩余寿命是基于由所述第二存储设备执行的第二工作负荷操作和存储在所述第二存储设备上的第二预测生命期限。
CN202010608005.8A 2020-06-29 2020-06-29 多存储设备生命周期管理*** Active CN113934360B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202010608005.8A CN113934360B (zh) 2020-06-29 2020-06-29 多存储设备生命周期管理***
US16/944,837 US11422723B2 (en) 2020-06-29 2020-07-31 Multi-storage device lifecycle management system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010608005.8A CN113934360B (zh) 2020-06-29 2020-06-29 多存储设备生命周期管理***

Publications (2)

Publication Number Publication Date
CN113934360A CN113934360A (zh) 2022-01-14
CN113934360B true CN113934360B (zh) 2024-04-12

Family

ID=79032011

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010608005.8A Active CN113934360B (zh) 2020-06-29 2020-06-29 多存储设备生命周期管理***

Country Status (2)

Country Link
US (1) US11422723B2 (zh)
CN (1) CN113934360B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11917025B2 (en) * 2021-08-30 2024-02-27 Cisco Technology, Inc. System for lifecycle progression leveraging adoption journey of networking and computing equipment

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413198A (zh) * 2018-04-28 2019-11-05 伊姆西Ip控股有限责任公司 用于管理存储***的方法、设备和计算机程序产品
CN111104055A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于管理存储***的方法、设备和计算机程序产品
CN111104342A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于存储的方法、电子设备和计算机程序产品

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5242264B2 (ja) * 2008-07-07 2013-07-24 株式会社東芝 データ制御装置、ストレージシステムおよびプログラム
EP2791774A1 (en) * 2012-02-08 2014-10-22 Hitachi, Ltd. Storage apparatus with a plurality of nonvolatile semiconductor storage units and control method thereof to place hot data in storage units with higher residual life and cold data in storage units with lower residual life
KR102289919B1 (ko) * 2014-04-15 2021-08-12 삼성전자주식회사 스토리지 컨트롤러, 스토리지 장치, 스토리지 시스템 및 상기 스토리지 컨트롤러의 동작 방법
US9424084B2 (en) * 2014-05-20 2016-08-23 Sandeep Gupta Systems, methods, and media for online server workload management
US9785374B2 (en) * 2014-09-25 2017-10-10 Microsoft Technology Licensing, Llc Storage device management in computing systems
US9830107B2 (en) * 2016-04-29 2017-11-28 Netapp, Inc. Drive wear-out prediction based on workload and risk tolerance
US10003538B2 (en) * 2016-06-08 2018-06-19 Futurewei Technologies, Inc. Proactive load balancing based on fractal analysis
US10282111B2 (en) * 2016-07-29 2019-05-07 Western Digital Technologies, Inc. Adaptive wear levelling
US10606486B2 (en) * 2018-01-26 2020-03-31 International Business Machines Corporation Workload optimized planning, configuration, and monitoring for a storage system environment
US10713158B2 (en) * 2018-06-28 2020-07-14 Western Digital Technologies, Inc. Non-volatile storage system with dynamic allocation of applications to memory based on usage monitoring

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110413198A (zh) * 2018-04-28 2019-11-05 伊姆西Ip控股有限责任公司 用于管理存储***的方法、设备和计算机程序产品
CN111104055A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于管理存储***的方法、设备和计算机程序产品
CN111104342A (zh) * 2018-10-29 2020-05-05 伊姆西Ip控股有限责任公司 用于存储的方法、电子设备和计算机程序产品

Also Published As

Publication number Publication date
US20210405906A1 (en) 2021-12-30
CN113934360A (zh) 2022-01-14
US11422723B2 (en) 2022-08-23

Similar Documents

Publication Publication Date Title
US10725853B2 (en) Systems and methods for memory failure prevention, management, and mitigation
US10642704B2 (en) Storage controller failover system
US9619181B2 (en) Information processing device and method for controlling replacement of semiconductor storage device
EP3514674B1 (en) Method and device for writing stored data into storage medium based on flash memory
TW201235840A (en) Error management across hardware and software layers
Vargas et al. High availability fundamentals
US11922019B2 (en) Storage device read-disturb-based block read temperature utilization system
CN113934360B (zh) 多存储设备生命周期管理***
US20220138065A1 (en) Semiconductor die failure recovery in a data storage device
US9858147B2 (en) Storage apparatus and method of controlling storage apparatus
Ji et al. A proactive fault tolerance scheme for large scale storage systems
US11922020B2 (en) Read-disturb-based read temperature information persistence system
CN114721585A (zh) 存储管理方法、设备和计算机程序产品
US11836073B2 (en) Storage device operating data counter system
US11995340B2 (en) Read-disturb-based read temperature information access system
US11868223B2 (en) Read-disturb-based read temperature information utilization system
US11914494B2 (en) Storage device read-disturb-based read temperature map utilization system
US11928354B2 (en) Read-disturb-based read temperature determination system
US11983431B2 (en) Read-disturb-based read temperature time-based attenuation system
US11922035B2 (en) Read-disturb-based read temperature adjustment system
US11989441B2 (en) Read-disturb-based read temperature identification system
US11435796B2 (en) Power backup device charging system
US20240211390A1 (en) Machine learning-based, system-wide solid-state drive wear-level balancing algorithm to extend the service life of solid-state drives
JP2015212855A (ja) インメモリ管理システムおよびインメモリ管理用プログラム

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant