CN106933492B - 有助于固态硬盘的磨损平衡的方法和装置 - Google Patents

有助于固态硬盘的磨损平衡的方法和装置 Download PDF

Info

Publication number
CN106933492B
CN106933492B CN201511021163.9A CN201511021163A CN106933492B CN 106933492 B CN106933492 B CN 106933492B CN 201511021163 A CN201511021163 A CN 201511021163A CN 106933492 B CN106933492 B CN 106933492B
Authority
CN
China
Prior art keywords
ssd
ssd device
reserved space
weight
space
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
CN201511021163.9A
Other languages
English (en)
Other versions
CN106933492A (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.)
EMC Corp
Original Assignee
EMC IP Holding Co LLC
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 EMC IP Holding Co LLC filed Critical EMC IP Holding Co LLC
Priority to CN201511021163.9A priority Critical patent/CN106933492B/zh
Priority to US15/387,744 priority patent/US10372349B2/en
Publication of CN106933492A publication Critical patent/CN106933492A/zh
Application granted granted Critical
Publication of CN106933492B publication Critical patent/CN106933492B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/0602Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
    • G06F3/0614Improving the reliability of storage systems
    • 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
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • 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
    • 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/0638Organizing or formatting or addressing of data
    • G06F3/0644Management of space entities, e.g. partitions, extents, pools
    • 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/0653Monitoring storage devices or systems
    • 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/0673Single storage device
    • 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/0673Single storage device
    • G06F3/0679Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
    • 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
    • G06F3/0688Non-volatile semiconductor memory arrays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2212/00Indexing scheme relating to accessing, addressing or allocation within memory systems or architectures
    • G06F2212/60Details of cache memory

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)
  • Memory System Of A Hierarchy Structure (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本公开的实施例涉及有助于固态硬盘的磨损平衡的方法和装置,该方法包括:获取固态硬盘SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘;基于各个SSD设备的性能参数,确定相应SSD设备的权重;以及根据各个SSD设备的权重,设置相应SSD设备的保留空间,其中保留空间是该SSD设备中不能被访问的存储空间。

Description

有助于固态硬盘的磨损平衡的方法和装置
技术领域
本公开的实施例总体上涉及存储技术,更具体地涉及有助于固态硬盘的磨损平衡的方法和装置。
背景技术
随着存储技术的发展,固态硬盘(SSD)得到了广泛应用,与传统的硬盘驱动器(HDD)相比,SSD具有速度快、功耗低等优点。通常,HDD存储系统使用数百GB或数TB的SSD作为其高速缓存空间,用来存储频繁访问的热数据,从而提高HDD存储系统的数据访问速度。
与HDD不一样,SSD的生命周期受到写操作的影响。过多的写操作会使得SSD变得不可靠,因此,SSD闪存块能够执行的写操作的次数是有限的。不同类型的SSD能够执行的写操作的次数不同,例如,多层单元(MLC)的写操作的次数只有单层单元(SLC)的十分之一,而三层单元(TLC)的写操作的次数只有MLC的十分之一。此外,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设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘;基于各个SSD设备的所述性能参数,确定相应SSD设备的权重;以及根据各个SSD设备的所述权重,设置相应SSD设备的保留空间,其中所述保留空间是该SSD设备中不能被访问的存储空间。
在本公开的示例性实施例中,SSD中的各个SSD磁盘的磨损能够达到平衡,从而能够增加SSD磁盘的生命周期,有效地提高了SDD高速缓存的稳定性。
附图说明
结合附图并参考以下详细说明,本公开的各实施例的特征、优点及其他方面将变得更加明显,在此以示例性而非限制性的方式示出了本公开的若干实施例。在附图中:
图1图示了现有技术的SSD高速缓存100的结构图;
图2图示了现有技术的SSD高速缓存100发生故障的示图;
图3图示了根据本公开的实施例的有助于固态硬盘的磨损平衡的方法300的流程图;
图4图示了根据本公开的一个实施例的SSD高速缓存400的结构图;
图5图示了根据本公开的一个实施例的SSD高速缓存400动态设置保留空间的示图;
图6图示了根据本公开的实施例的有助于固态硬盘的磨损平衡的装置600的流程图;以及
图7图示了可以在其中实现根据本公开的实施例的有助于固态硬盘的磨损平衡的方法的计算机设备700的框图。
具体实施方式
以下参考附图详细描述本公开的各个示例性实施例。附图中的流程图和框图示出了根据本公开的各种实施例的方法和系统的可能实现的体系架构、功能和操作。应当注意,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,所述模块、程序段、或代码的一部分可以包括一个或多个用于实现各个实施例中所规定的逻辑功能的可执行指令。也应当注意,在有些作为备选的实现中,方框中所标注的功能也可以按照不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,或者它们有时也可以按照相反的顺序执行,这取决于所涉及的功能。同样应当注意的是,流程图和/或框图中的每个方框、以及流程图和/或框图中的方框的组合,可以使用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以使用专用硬件与计算机指令的组合来实现。
本文所使用的术语“包括”、“包含”及类似术语应该被理解为是开放性的术语,即“包括/包含但不限于”。术语“基于”是“至少部分地基于”。术语“一个实施例”表示“至少一个实施例”;术语“另一个实施例”、“又一个实施例”表示“至少一个另外的实施例”。其他术语的相关定义将在下文描述中给出。
图1图示了现有技术的SSD高速缓存100的结构图。如图1所示,SSD高速缓存100包括4个SSD设备,分别为SSD设备101、SSD设备102、SSD设备103以及SSD设备104,其中每个设备由一对SSD磁盘组成,形成一组磁盘阵列RAID。
通常,对SSD磁盘设置一定的保留空间以增加SSD磁盘的生命周期。然而,在SSD高速缓存的常规设计中,SSD磁盘保留空间的比例通常是固定的。例如,在每个SSD磁盘中,设置了一定比例的保留空间,其中保留空间是SSD磁盘中不能被访问的存储空间。如图1所示,对于每个磁盘SSD,其存储空间分为可用空间和保留空间,其中每个SSD设备的保留空间相同,均为50%。
在某些情况下,发送到SSD设备102的访问操作可能是随机的写操作,而这些写操作会导致SSD设备102的温度和工作电流显著增加。如果这种写操作的次数过多,则会造成SSD设备102的磨损程度快于其他三个SSD设备。更加严重的是,由于SSD设备102的温度和工作电流快速增加,造成SSD设备102的故障块显著增加。然而,现有技术中各个SSD设备设置固定比例的保留空间,并且不考虑温度和工作电流对个体SSD的生命周期产生的影响。
如图2所示,在某个时间点,SSD设备102的温度和/或工作电流过高,导致SSD设备102的磨损程度持续增加。当SSD设备102的磨损程度超过安全阈值时,SSD设备102将发生故障或者变得不可访问,从而造成整个SSD高速缓存100发生故障。如图2所示,仅仅由于SSD设备102的过快磨损,造成了整个SSD高速缓存100不可使用,而其他3个设备的磨损比例还很小。因此,现有的固定比例的保留空间的方案严重影响了存储系统的整体性能。
图3图示了根据本公开的实施例的有助于固态硬盘的磨损平衡的方法300的流程图,方法300包括在步骤S302处,获取固态硬盘SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘。可选地,SSD设备的数目可以为大于等于2的任何值,诸如为4个、6个。另外,各个SSD设备可以仅仅只包括一块SSD磁盘,即,每个SSD设备为一块SSD磁盘。备选地,各个SSD设备也可以包括一对SSD磁盘,以形成一组磁盘阵列RAID。
在一个实施例中,多个SSD设备可以组成存储系统中的SSD高速缓存,该存储系统可以包括另外的磁盘设备(例如磁盘驱动器(HDD))作为主存储介质,而SSD可以作为HDD存储系统中的高速缓存。可选地,SSD高速缓存使用高速缓存页来存储硬盘驱动器HDD中被频繁访问的热数据,其中所述热数据是随机数据并且所述热数据的大小可以小于64千字节。备选地,可以根据需要调整高速缓存页的大小。
在一个实施例中,SSD设备的性能参数表示SSD设备的当前工作状态,通过获取SSD设备的性能参数,能够确定SSD设备当前的磨损程度。在一个实施例中,性能参数可以是SSD设备的温度、工作电流或磨损比例等,例如,某个SSD设备的当前温度为30°,当前工作电流为1A,当前磨损比例为1%。在另一个实施例中,性能参数也可以是SSD设备的写操作次数,例如某个SSD设备已经被写300次。
在一个实施例中,可以周期性地获取多个SSD设备中的各个SSD设备的性能参数,例如,每天或每三个小时获取各个每个SSD设备的温度和工作电流。备选地,可以设置预警条件,并且基于预警条件来触发获取SSD设备的性能参数的操作。例如当某个SSD设备的温度高于40°或者工作电流大于1.2A时,获取多个SSD设备中的各个SSD设备的性能参数。
接下来,方法300继续进行到步骤S304,基于各个SSD设备的所述性能参数,确定相应SSD设备的权重。例如,基于SSD设备的温度、工作电流或磨损比例,计算该SSD设备的权重,每个SSD设备的权重可以与其性能参数的值成正比或成反比。例如,SSD设备n的权重wn=f(t,I,e),其中t表示设备n的温度,I表示设备n的工作电流,e表示设备n已经磨损的数据,当t增加时,wn的值增加,当I增加时,wn的值也增加。通常,SSD磁盘的温度越高或工作电流越大,磁盘的损坏的可能性越大。
在一个实施例中,可以配置该权重,使得权重随所述性能参数的增加而递增;和/或可以配置该权重,使得权重随所述性能参数的降低而递减。也就是说,设备的性能参数的值越大,该设备的权重也就越大。可选地,在初始条件下,每个设备具有相同的温度、工作电流和磨损比例,因而各个SSD设备的权重值可以相等,例如均为1。
接下来,在步骤S306处,根据各个SSD设备的所述权重,设置相应SSD设备的保留空间。每个SSD设备的存储空间分为可用空间和保留空间,其中可用空间是SSD设备中可以被访问的存储空间,而保留空间是SSD设备中不能被访问的存储空间。根据权重来设置保留空间可以使得磨损较高的SSD设备的磨损程度降低。例如,SSD设备的权重son=s*r*f(w0,w1,w2,...,wn),其中s为SSD设备n的整个存储空间,r为SSD设备n的默认保留空间的比例,wn为SSD设备n的权重。例如,存在4个SSD设备,每个设备的空间为100GB,默认保留空间的比例是50%,初始权重为1,则每个设备的初始保留空间为50GB。在SSD设备运行一段时间之后,由于各个SSD设备的访问次数不一致,各个SSD设备具有不同的温度、工作电流和磨损比例,因而各个SSD设备的权重和保留空间也不相同,以下表1示出了某一时间的设备的保留空间。
表1:设备的保留空间的示例
Figure BDA0000896548660000061
Figure BDA0000896548660000071
如表1所示,当某个SSD设备的权重越大,该SSD设备的保留空间就越大。可选地,对于权重最大的SSD设备,可以设置最大比例的保留空间,和/或对于权重最小的SSD设备,可以设置最小比例的保留空间。
一般来说,SSD设备的访问次数与SSD设备的可用空间成正比。因此,SSD设备的访问次数与SSD设备的保留空间成反比,即当特定SSD设备被设置最大比例的保留空间时,特定SSD设备被写入的次数最小,和/或当特定SSD设备被设置最小比例的保留空间时,特定SSD设备被写入的次数最大。因此,磨损比例较大的SSD设备的保留空间将增加,其磨损比例将减小,磨损比例较小的SSD设备的保留空间将减小,其磨损比例将增大,从而使得整个SSD高速缓存中的所有SSD设备达到磨损平衡。
图4图示了根据本公开的一个实施例的SSD高速缓存400的结构图。如图4所示,可选地,SSD高速缓存100包括4个SSD设备,即SSD设备401、SSD设备402、SSD设备403以及SSD设备404,其中每个设备一对SSD磁盘组成,形成一组磁盘阵列RAID。在每个SSD磁盘中,设置了一定比例的保留空间,其中保留空间是SSD磁盘中不能被访问的存储空间。如图4所示,对于每个磁盘SSD,其存储空间分为可用空间和保留空间在初始条件下,每个设备具有相同的温度、工作电流和磨损比例,因此每个SSD设备的保留空间相同,例如为50%。
在一个实施例中,各个SSD设备的空间可以为100GB,其可以包括多个高速缓存页。可选地,每个高速缓存页的大小可以为64KB,则对于各个SSD设备,存在162万个页。在初始条件下,如果默认的保留空间为50GB,则对于每个SSD设备,存在81万个可用页和81万个保留页。
在一个实施例中,可以对各个SSD设备设置权重。例如,可以配置该权重,使得权重随所述性能参数的增加而递增;和/或可以配置该权重,使得权重随所述性能参数的降低而递减。也就是说,设备的性能参数的值越大,该设备的权重也就越大。可选地,在初始条件下,每个设备具有相同的温度、工作电流和磨损比例,因而各个SSD设备的权重值可以相等,例如均为1。
图5图示了根据本公开的一个实施例的SSD高速缓存400动态设置保留空间的示图。如图5所示,在SSD高速缓存工作一段时间之后,由于SSD设备402的写操作次数增加,其温度和工作电流显著增加,根据本公开的实施例的SSD的磨损平衡的方法,SSD设备402的温度或工作电流越大,其权重也就越大。相应地,SSD设备402的保留空间增加,例如保留空间的比例被设置为66.7%。相反,SSD设备401、403和404由于温度和工作电流减小,其保留空间比例被设置为41.7%。在动态调整4个SSD设备的保留空间之后,SSD高速缓存继续工作。
在对各个SSD设备设置新的保留空间之后,由于SSD设备401、403和404具有更多的可用空间,则对于这三个设备的写操作将增加,它们的温度和工作电流也相应地增加。而对于SSD设备402,由于其具有最少的可用空间,它的写入操作将大幅度减少。因此,在一段时间之后,SSD设备402的权重将减小,而SSD设备401、403和404的权重将增加,相应地,402的保留空间将减小,而SSD设备401、403和404的保留空间将增加,SSD高速缓存中各个设备的状态可选地又回到图4中所示出的初始状态,使得各个SSD设备之间的磨损情况达到动态平衡。因此,SSD设备402不会因为暂时的温度或工作电流升高而影响其生命周期,通过本公开的实施例的SSD的磨损平衡的方法300,能够使得SSD高速缓存中的各个设备之间的磨损达到平衡,因而本公开的实施例有效地提高了SSD高速缓存的整体性能。
图6图示了根据本公开的实施例的有助于固态硬盘的磨损平衡的装置600的流程图,装置600包括:获取装置602,用于获取固态硬盘SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘;确定装置604,用于基于各个SSD设备的所述性能参数,确定相应SSD设备的权重;以及设置装置606,用于根据各个SSD设备的所述权重,设置相应SSD设备的保留空间,其中所述保留空间是该SSD设备中不能被访问的存储空间。
在一个实施例中,其中所述SSD高速缓存使用高速缓存页来存储硬盘驱动器HDD中被频繁访问的热数据。可选地,所述热数据是随机数据并且其大小可以小于64千字节。
在一个实施例中,其中性能参数可以包括以下各项中的至少一项:温度、工作电流或磨损比例。可选地,其中所述获取装置602可以进一步用于:周期性地获取所述SSD高速缓存中的所述多个SSD设备中的各个SSD设备的所述性能参数。在另一个实施例中,其中所述确定装置604可以进一步用于:配置所述权重,使得所述权重随所述性能参数的增加而递增;和/或配置所述权重,使得所述权重随所述性能参数的降低而递减。可选地,每个SSD设备的初始权重相同。
在一个实施例中,其中所述设置装置606可以进一步用于:对于权重最大的SSD设备,设置最大比例的保留空间;和/或对于权重最小的SSD设备,设置最小比例的保留空间。可选地,其中当特定SSD设备被设置最大比例的保留空间时,所述特定SSD设备被写入的次数最小;和/或当特定SSD设备被设置最小比例的保留空间时,所述特定SSD设备被写入的次数最大。
在下文中,将参考图7来描述可以在其中实现本公开的固态硬盘的磨损平衡方法的计算机设备。图7图示了可以在其中实现根据本公开的模拟方法的计算机设备700的框图。
图7中所示的计算机系统包括CPU(中央处理单元)701、RAM(随机访问存储器)702、ROM(只读存储器)703、系统总线704、硬盘控制器705、键盘控制器706、串行接口控制器707、并行接口控制器708、显示器控制器709、硬盘710、键盘711、串行外部设备712、并行外部设备713和显示器714。在这些部件中,与系统总线704相连的有CPU 701、RAM 702、ROM 703、硬盘控制器705、键盘控制器706、串行接口控制器707、并行接口控制器708和显示器控制器709。硬盘710与硬盘控制器705相连,键盘711与键盘控制器706相连,串行外部设备712与串行接口控制器707相连,并行外部设备713与并行接口控制器708相连,以及显示器714与显示器控制器709相连。需要说明的是,图7所述的结构框图仅仅为了示例的目的而示出的,并非是对本公开的限制。在一些情况下,可以根据需要添加或者减少其中的一些设备。本公开的实施方式可以作为计算机程序代码存储在上计算机的例如硬盘710的存储设备中,在被载入诸如存储器中运行时,将使得CPU 701执行根据本公开的实施例的磁盘驱动器模拟方法。
以上所述仅为本公开的实施例可选实施例,并不用于限制本公开的实施例,对于本领域的技术人员来说,本公开的实施例可以有各种更改和变化。凡在本公开的实施例的精神和原则之内,所作的任何修改、等效替换、改进等,均应包含在本公开的实施例的保护范围之内。

Claims (18)

1.一种有助于固态硬盘(SSD)的磨损平衡的方法,包括:
获取SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘,其中所述性能参数被使得包括各个SSD设备的温度;
基于各个SSD设备的所述性能参数,确定相应SSD设备的权重;以及
根据各个SSD设备的所述权重,设置相应SSD设备的保留空间,其中所述保留空间是该SSD设备中不能被访问的存储空间;
其中根据各个SSD设备的所述权重设置相应SSD设备的所述保留空间包括以下至少一项:
对于权重最大的SSD设备,设置最大比例的保留空间;以及
对于权重最小的SSD设备,设置最小比例的保留空间;以及其中,
如果所述保留空间被设置为大于阈值空间,则相应SSD设备的写次数被设置为小于阈值次数,以及
如果所述保留空间被设置为小于所述阈值空间,则相应SSD设备的所述写次数被设置为大于所述阈值次数。
2.根据权利要求1所述的方法,其中所述SSD高速缓存使用高速缓存页来存储硬盘驱动器HDD中被频繁访问的热数据。
3.根据权利要求2所述的方法,其中所述热数据是随机数据并且其大小小于64千字节。
4.根据权利要求1所述的方法,其中获取SSD高速缓存中的所述多个SSD设备中的各个SSD设备的性能参数包括:
周期性地获取所述SSD高速缓存中的所述多个SSD设备中的各个SSD设备的所述性能参数。
5.根据权利要求4所述的方法,其中基于各个SSD设备的所述性能参数,确定相应SSD设备的权重包括:
配置所述权重的分析,使得所述权重随所述性能参数的增加而递增;和/或
配置所述权重的分析,使得所述权重随所述性能参数的降低而递减。
6.根据权利要求5所述的方法,其中各个SSD设备的初始权重相等。
7.根据权利要求1-6中任一项所述的方法,其中所述性能参数还包括以下各项中的至少一项:工作电流或磨损比例。
8.根据权利要求1所述的方法,其中各个SSD设备的所述性能参数响应于预定义时间段的期满而被周期性获取,以及
其中所述方法还包括:
检测所述多个SSD设备中的另一SSD设备的温度高于预定义温度阈值,以及
响应于检测到所述另一SSD设备的所述温度高于所述预定义温度阈值,获取所述多个SSD设备中的每个SSD设备的所述性能参数。
9.一种有助于固态硬盘(SSD)的磨损平衡的装置,包括:
获取装置,用于获取SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘,其中所述性能参数被使得包括各个SSD设备的温度;
确定装置,用于基于各个SSD设备的所述性能参数,确定相应SSD设备的权重;以及
设置装置,用于根据各个SSD设备的所述权重,设置相应SSD设备的保留空间,其中所述保留空间是该SSD设备中不能被访问的存储空间;
其中所述设置装置被配置为执行以下至少一项:
对于权重最大的SSD设备,设置最大比例的保留空间;以及
对于权重最小的SSD设备,设置最小比例的保留空间;以及其中,
如果所述保留空间被设置为大于阈值空间,则相应SSD设备的写次数被设置为小于阈值次数,以及
如果所述保留空间被设置为小于所述阈值空间,则相应SSD设备的所述写次数被设置为大于所述阈值次数。
10.根据权利要求9所述的装置,其中所述SSD高速缓存使用高速缓存页来存储硬盘驱动器HDD中被频繁访问的热数据。
11.根据权利要求10所述的装置,其中所述热数据是随机数据并且其大小小于64千字节。
12.根据权利要求9所述的装置,其中所述获取装置进一步用于:
周期性地获取所述SSD高速缓存中的所述多个SSD设备中的各个SSD设备的所述性能参数。
13.根据权利要求12所述的装置,其中所述确定装置进一步用于:
配置所述权重,使得所述权重随所述性能参数的增加而递增;和/或
配置所述权重,使得所述权重随所述性能参数的降低而递减。
14.根据权利要求13所述的装置,其中各个SSD设备的初始权重相等。
15.根据权利要求9所述的装置,其中所述性能参数包括以下各项中的至少一项:温度、工作电流或磨损比例。
16.根据权利要求10所述的装置,其中所述获取装置响应于预定义时间段的期满而周期性获取各个SSD设备的所述性能参数,以及
其中所述获取装置还被配置为:
检测所述多个SSD设备中的另一SSD设备的温度高于预定义温度阈值,以及
响应于检测到所述另一SSD设备的所述温度高于所述预定义温度阈值,获取所述多个SSD设备中的每个SSD设备的所述性能参数。
17.一种有助于固态硬盘(SSD)的磨损平衡的装置,包括:
存储器;
处理器,所述处理器被配置为:
获取SSD高速缓存中的多个SSD设备中的各个SSD设备的性能参数,其中各个SSD设备包括一个或多个SSD磁盘,其中所述性能参数被使得包括各个SSD设备的温度;
基于各个SSD设备的所述性能参数,确定相应SSD设备的权重;以及
根据各个SSD设备的所述权重,设置相应SSD设备的保留空间,其中所述保留空间是该SSD设备中不能被访问的存储空间;
其中在根据各个SSD设备的所述权重设置相应SSD设备的保留空间,所述处理器还被构造和被布置为执行以下至少一项:
对于权重最大的SSD设备,设置最大比例的保留空间;以及
对于权重最小的SSD设备,设置最小比例的保留空间;以及其中,
如果所述保留空间被设置为大于阈值空间,则相应SSD设备的写次数被设置为小于阈值次数,以及
如果所述保留空间被设置为小于所述阈值空间,则相应SSD设备的所述写次数被设置为大于所述阈值次数。
18.根据权利要求17所述的装置,其中所述处理器被进一步配置为执行根据权利要求2-8中的任一项所述的方法。
CN201511021163.9A 2015-12-30 2015-12-30 有助于固态硬盘的磨损平衡的方法和装置 Active CN106933492B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN201511021163.9A CN106933492B (zh) 2015-12-30 2015-12-30 有助于固态硬盘的磨损平衡的方法和装置
US15/387,744 US10372349B2 (en) 2015-12-30 2016-12-22 Method and apparatus for facilitating wear leveling of solid state disk

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201511021163.9A CN106933492B (zh) 2015-12-30 2015-12-30 有助于固态硬盘的磨损平衡的方法和装置

Publications (2)

Publication Number Publication Date
CN106933492A CN106933492A (zh) 2017-07-07
CN106933492B true CN106933492B (zh) 2020-05-22

Family

ID=59236167

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201511021163.9A Active CN106933492B (zh) 2015-12-30 2015-12-30 有助于固态硬盘的磨损平衡的方法和装置

Country Status (2)

Country Link
US (1) US10372349B2 (zh)
CN (1) CN106933492B (zh)

Families Citing this family (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11288017B2 (en) 2017-02-23 2022-03-29 Smart IOPS, Inc. Devices, systems, and methods for storing data using distributed control
US10394474B2 (en) * 2017-11-10 2019-08-27 Smart IOPS, Inc. Devices, systems, and methods for reconfiguring storage devices with applications
US11354247B2 (en) 2017-11-10 2022-06-07 Smart IOPS, Inc. Devices, systems, and methods for configuring a storage device with cache
CN108052414B (zh) * 2017-12-28 2021-09-17 湖南国科微电子股份有限公司 一种提升ssd工作温度范围的方法及系统
CN111104055B (zh) 2018-10-29 2023-10-27 伊姆西Ip控股有限责任公司 用于管理存储系统的方法、设备和计算机程序产品
CN111124271B (zh) * 2018-10-31 2023-09-08 伊姆西Ip控股有限责任公司 用于针对磁盘系统执行资源重新分配的方法、装置和介质
CN113220233A (zh) * 2021-05-14 2021-08-06 北京百度网讯科技有限公司 数据读取方法、装置及系统
US11966626B2 (en) * 2022-05-13 2024-04-23 Western Digital Technologies, Inc. Hybrid terabytes written (TBW) storage systems
CN116774948B (zh) * 2023-08-18 2023-11-28 合肥联宝信息技术有限公司 一种数据处理方法、设备、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731505A (zh) * 2014-01-17 2014-04-16 中国联合网络通信集团有限公司 一种数据分布式存储方法及系统

Family Cites Families (36)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7908423B2 (en) * 2007-07-25 2011-03-15 Silicon Motion, Inc. Memory apparatus, and method of averagely using blocks of a flash memory
US8010738B1 (en) 2008-06-27 2011-08-30 Emc Corporation Techniques for obtaining a specified lifetime for a data storage device
US8046551B1 (en) 2008-08-14 2011-10-25 Emc Corporation Techniques for processing I/O requests
US8130554B1 (en) 2008-09-29 2012-03-06 Emc Corporation Securely erasing flash-based memory
US9104326B2 (en) 2010-11-15 2015-08-11 Emc Corporation Scalable block data storage using content addressing
US9652352B1 (en) 2011-03-08 2017-05-16 EMC IP Holding Company LLC Techniques for storage capacity configuration
US8478939B2 (en) * 2011-07-07 2013-07-02 Lsi Corporation Relative heat index based hot data determination for block based storage tiering
US8880801B1 (en) 2011-09-28 2014-11-04 Emc Corporation Techniques for reliability and availability assessment of data storage configurations
WO2013076763A1 (en) * 2011-11-22 2013-05-30 Hitachi, Ltd. Storage system and control method of storage system
WO2013098960A1 (ja) * 2011-12-27 2013-07-04 株式会社日立製作所 計算機システム、ファイル管理方法及び記憶媒体
US9811288B1 (en) 2011-12-30 2017-11-07 EMC IP Holding Company LLC Managing data placement based on flash drive wear level
US8996951B2 (en) * 2012-11-15 2015-03-31 Elwha, Llc Error correction with non-volatile memory on an integrated circuit
US9032177B2 (en) * 2012-12-04 2015-05-12 HGST Netherlands B.V. Host read command return reordering based on time estimation of flash read command completion
US9418131B1 (en) 2013-09-24 2016-08-16 Emc Corporation Synchronization of volumes
US9208162B1 (en) 2013-09-26 2015-12-08 Emc Corporation Generating a short hash handle
US9378106B1 (en) 2013-09-26 2016-06-28 Emc Corporation Hash-based replication
US9286003B1 (en) 2013-12-31 2016-03-15 Emc Corporation Method and apparatus for creating a short hash handle highly correlated with a globally-unique hash signature
US20150199152A1 (en) * 2014-01-16 2015-07-16 Avalanche Technology, Inc. Method of managing redundant array of independent disks (raid) groups in a solid state disk array
US20150212755A1 (en) * 2014-01-30 2015-07-30 Avalanche Technology, Inc. Method of managing throughput of redundant array of independent disks (raid) groups in a solid state disk array
US9367398B1 (en) 2014-03-28 2016-06-14 Emc Corporation Backing up journal data to a memory of another node
US9442941B1 (en) 2014-03-28 2016-09-13 Emc Corporation Data structure for hash digest metadata component
US9606870B1 (en) 2014-03-31 2017-03-28 EMC IP Holding Company LLC Data reduction techniques in a flash-based key/value cluster storage
US9342465B1 (en) 2014-03-31 2016-05-17 Emc Corporation Encrypting data in a flash-based contents-addressable block device
US9396243B1 (en) 2014-06-27 2016-07-19 Emc Corporation Hash-based replication using short hash handle and identity bit
US9582212B2 (en) * 2014-09-02 2017-02-28 Sandisk Technologies Llc Notification of trigger condition to reduce declared capacity of a storage device
US10025843B1 (en) 2014-09-24 2018-07-17 EMC IP Holding Company LLC Adjusting consistency groups during asynchronous replication
US9304889B1 (en) 2014-09-24 2016-04-05 Emc Corporation Suspending data replication
US9916087B2 (en) * 2014-10-27 2018-03-13 Sandisk Technologies Llc Method and system for throttling bandwidth based on temperature
US9946471B1 (en) 2015-03-31 2018-04-17 EMC IP Holding Company LLC RAID groups based on endurance sets
US9665305B1 (en) 2015-06-26 2017-05-30 EMC IP Holding Company LLC Tiering data between two deduplication devices
US9910791B1 (en) 2015-06-30 2018-03-06 EMC IP Holding Company LLC Managing system-wide encryption keys for data storage systems
US10042751B1 (en) 2015-09-30 2018-08-07 EMC IP Holding Company LLC Method and system for multi-tier all-flash array
US9996539B1 (en) 2015-09-30 2018-06-12 EMC IP Holding Company LLC Data protection and long term retention
US20170329684A1 (en) * 2016-05-13 2017-11-16 Synology Incorporated Method and apparatus for performing data recovery in redundant storage system
US10082965B1 (en) 2016-06-30 2018-09-25 EMC IP Holding Company LLC Intelligent sparing of flash drives in data storage systems
CN107870732B (zh) * 2016-09-23 2020-12-25 伊姆西Ip控股有限责任公司 从固态存储设备冲刷页面的方法和设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103731505A (zh) * 2014-01-17 2014-04-16 中国联合网络通信集团有限公司 一种数据分布式存储方法及系统

Also Published As

Publication number Publication date
CN106933492A (zh) 2017-07-07
US10372349B2 (en) 2019-08-06
US20170192695A1 (en) 2017-07-06

Similar Documents

Publication Publication Date Title
CN106933492B (zh) 有助于固态硬盘的磨损平衡的方法和装置
US10062442B2 (en) Method for managing data blocks and method of data management for data storage device
US11403013B2 (en) Managed NVM adaptive cache management
US10580514B2 (en) Periodically updating a log likelihood ratio (LLR) table in a flash memory controller
US9733844B2 (en) Data migration method, data migration apparatus, and storage device
US9329797B2 (en) Method and system for adjusting block erase or program parameters based on a predicted erase life
US10241908B2 (en) Techniques for dynamically determining allocations and providing variable over-provisioning for non-volatile storage
TWI673605B (zh) 混合模塊之操作
US10387062B2 (en) Storage system with cells changeable between two different level cell modes based on predicted lifetime
US8775723B2 (en) Storage system and control method of storage system
JP6109316B2 (ja) アドレスマッピング
US8417879B2 (en) Method for suppressing errors, and associated memory device and controller thereof
KR101952001B1 (ko) 저장 장치 드라이브 수명 추정 메커니즘을 갖는 전자 시스템 및 그 동작 방법
EP3336706A1 (en) Method and storage device for processing stripes in storage device
US9235470B2 (en) Adaptive EPWR (enhanced post write read) scheduling
US10126970B2 (en) Paired metablocks in non-volatile storage device
CN109599143B (zh) 具有读阈值机制的存储系统及其操作方法
KR20210057193A (ko) 소계 기입 카운터에 기초한 하이브리드 웨어 레벨링 동작 수행
US11199968B2 (en) Using recurring write quotas to optimize utilization of solid state storage in a hybrid storage array
US20200285393A1 (en) Unbalanced plane management method, associated data storage device and controller thereof
US10740020B2 (en) Method, device and computer program product for managing disk array
US11704024B2 (en) Multi-level wear leveling for non-volatile memory
JP6102515B2 (ja) 情報処理装置、制御回路、制御プログラム、および制御方法
CN112689829A (zh) 用于就地数据替代媒体的混合式耗损均衡
WO2015015589A1 (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
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20200413

Address after: Massachusetts, USA

Applicant after: EMC IP Holding Company LLC

Address before: Ma Sazhusaizhou

Applicant before: EMC Corp.

GR01 Patent grant
GR01 Patent grant