CN114356238A - 一种固态硬盘数据巡检方法及装置 - Google Patents
一种固态硬盘数据巡检方法及装置 Download PDFInfo
- Publication number
- CN114356238A CN114356238A CN202111679388.9A CN202111679388A CN114356238A CN 114356238 A CN114356238 A CN 114356238A CN 202111679388 A CN202111679388 A CN 202111679388A CN 114356238 A CN114356238 A CN 114356238A
- Authority
- CN
- China
- Prior art keywords
- storage area
- health
- data
- queue
- solid state
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 57
- 239000007787 solid Substances 0.000 title claims abstract description 52
- 238000007689 inspection Methods 0.000 title claims description 55
- 230000036541 health Effects 0.000 claims abstract description 185
- 230000008859 change Effects 0.000 claims description 11
- 238000004590 computer program Methods 0.000 claims description 6
- 238000001514 detection method Methods 0.000 abstract description 6
- 238000013500 data storage Methods 0.000 description 10
- 238000010586 diagram Methods 0.000 description 6
- 230000006870 function Effects 0.000 description 5
- 230000008569 process Effects 0.000 description 4
- 230000009471 action Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 238000005070 sampling Methods 0.000 description 3
- 230000007423 decrease Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 238000012937 correction Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000009795 derivation Methods 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 239000002904 solvent Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
Images
Landscapes
- Techniques For Improving Reliability Of Storages (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明公开了一种固态硬盘数据巡检方法及装置,获取各存储区域的状态参数,基于状态参数确定每个存储区域对应的健康等级,根据各个存储区域的健康等级确定是否对该存储区域进行巡检。通过本申请中的巡检方式,在每个巡检周期内,并不是针对所有的存储区域进行巡检,只对部分需要巡检的存储区域进行巡检,从每个存储区域的角度分析,每个存储区域的巡检周期是根据各自的健康等级确定的,且可以根据每个存储区域的状态参数实时调整,并不是现有技术中统一的固定值。本申请基于存储区域的状态参数实时确定巡检周期,巡检周期的设定更可靠,减小了漏检的风险,且一定程度上减小了固态硬盘的工作负载和功耗。
Description
技术领域
本发明涉及数据处理技术领域,特别是涉及一种固态硬盘数据巡检方法及装置。
背景技术
SSD(Solid State Drives,固态硬盘)存储器采用Nand flash保存数据,具体的,当Nand flash写入数据时,就是使控制门去充电(对控制门加压),使悬浮门存储的电荷增多,电荷量超过阈值时,表示0;当Nand flash擦除数据时,就是对悬浮门放电,使悬浮门中的电荷量低于阈值,此时表示1。但是随着时间的推移,悬浮门中的电荷量可能会减少,Nandflash颗粒中原先写入的电子可能会丢失,在对数据进行读取时,可能会读取失败。
因此,现有技术通常会按照周期对存储数据的存储区域进行巡检,提前发现由于颗粒电荷错误可能会发生读取失败风险的数据,然后重新写入数据,或者搬移到新的存储区域,使数据又可以继续保持一段时间,延长SSD存储器中存储的数据的保质期。
但是,现有技术中对存储数据的存储区域进行巡检的周期通常是一个固定值,这个固定值的设置是困难且难以周全的,如果周期值过大,每两次巡检之间的时间间隔就会过大,在此时间间隔内可能会存在漏检的风险。如果周期值过小,则巡检的频率就会很大,虽然一定程度上可以减小漏检的风险,但是SSD存储器的工作负载和功耗会很大。
综上,提供一种固态硬盘数据巡检方法既能保证SSD存储器中的存储的数据的安全性,又能尽可能的减小SSD的工作负载和功耗是十分必要的。
发明内容
本发明的目的是提供一种固态硬盘数据巡检方法及装置,基于存储区域的状态参数实时确定巡检周期,巡检周期的设定更可靠,减小了漏检的风险,且一定程度上减小了固态硬盘的工作负载和功耗。
为解决上述技术问题,本发明提供了一种固态硬盘数据巡检方法,包括:
确定固态硬盘中的各个存储区域的状态参数;
基于每个所述存储区域的状态参数及预设状态参数-预设健康等级对应关系确定每个所述存储区域的健康等级;
在每个巡检周期中,根据每个所述存储区域的健康等级确定是否对其进行巡检。
优选地,根据每个所述存储区域的健康等级确定是否对其进行巡检,包括:
根据每个所述存储区域的健康等级生成待巡检存储区域队列;
对所述待巡检存储区域队列中的存储区域进行巡检,并对各所述存储区域的健康等级进行更新。
优选地,根据每个所述存储区域的健康等级生成待巡检存储区域队列,包括:
确定每个所述存储区域的健康等级是否为预设巡检等级;
将所述健康等级为所述预设巡检等级的存储区域加入至所述待巡检存储区域队列。
优选地,对所述待巡检存储区域队列中的存储区域进行巡检,包括:
从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数;
判断选取的所述存储区域的健康指数是否在预设范围内;
若在所述预设范围外,则对选取的所述存储区域中存储的数据进行重写或搬移。
优选地,所述健康等级为自然数,对各所述存储区域的健康等级进行更新,包括:
将所述待巡检存储区域队列之外的各存储区域的健康等级均减一,作为各所述存储区域更新后的健康等级;
在选取的所述存储区域的健康指数在所述预设范围内时,将选取的所述存储区域的健康指数转换为健康等级,作为选取的所述存储区域更新后的健康等级;
根据各所述存储区域更新后的健康等级重新进入根据每个所述存储区域的健康等级生成待巡检存储区域队列的步骤。
优选地,从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数之前,还包括:
判断所述待巡检存储区域队列是否为空;
若为空,则进入下一巡检周期;
若不为空,则进入从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数的步骤。
优选地,根据每个所述存储区域的健康等级确定是否对其进行巡检之前,还包括:
基于每个所述存储区域的状态参数及预设状态参数-预设健康指数模型确定每个所述存储区域的健康指数;
将每个所述存储区域的健康指数转换为对应的健康等级。
优选地,根据每个所述存储区域的健康等级确定是否对其进行巡检之后,还包括:
判断是否存在新写入数据的存储区域;
若存在,则对新写入数据的存储区域加入所述待巡检区域队列。
优选地,判断是否存在新写入数据的存储区域之后,还包括:
若存在,则将新写入数据的存储区域的健康等级设定为初始等级或根据新写入数据的存储区域的状态参数及预设状态参数-预设健康等级对应关系确定新写入数据的存储区域的健康等级。
优选地,根据每个所述存储区域的健康等级确定是否对其进行巡检之后,还包括:
判断各所述存储区域中是否存在对应的状态参数变化超过预设值的存储区域;
若存在,则将所述状态参数变化超过所述预设值的存储区域加入所述待巡检区域队列。
为解决上述技术问题,本发明还提供了一种固态硬盘数据巡检装置,包括:
存储器,用于存储计算机程序;
处理器,用于在执行所述计算机程序时,实现上述所述的固态硬盘数据巡检方法的步骤。
本申请提供了一种固态硬盘数据巡检方法及装置,获取各存储区域的状态参数,基于状态参数确定每个存储区域对应的健康等级,根据各个存储区域的健康等级确定是否对该存储区域进行巡检。通过本申请中的巡检方式,在每个巡检周期内,并不是针对所有的存储区域进行巡检,只对部分需要巡检的存储区域进行巡检,从每个存储区域的角度分析,每个存储区域的巡检周期是根据各自的健康等级确定的,且可以根据每个存储区域的状态参数实时调整,并不是现有技术中统一的固定值。本申请基于存储区域的状态参数实时确定巡检周期,巡检周期的设定更可靠,减小了漏检的风险,且一定程度上减小了固态硬盘的工作负载和功耗。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对现有技术和实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明提供的一种固态硬盘数据巡检方法的流程示意图;
图2为本发明提供的存储区域状态参数关系示意图;
图3为本发明提供的一种巡检示意图;
图4为本发明提供的一种固态硬盘数据巡检方法另一实施例的流程示意图;
图5为本发明提供的一种固态硬盘数据巡检装置的结构框图。
具体实施方式
本发明的核心是提供一种固态硬盘数据巡检方法及装置,基于存储区域的状态参数实时确定巡检周期,巡检周期的设定更可靠,减小了漏检的风险,且一定程度上减小了固态硬盘的工作负载和功耗。
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参照图1,图1为本发明提供的一种固态硬盘数据巡检方法的流程示意图,该方法包括:
S11:确定固态硬盘中的各个存储区域的状态参数;
具体地,本申请的设计思路为:不为各个存储区域设置固定的巡检周期,而是根据固态硬盘的当前状态,判断是否需要进行巡检。从而提高巡检的灵活性。因此,本申请中先对固态硬盘中的各个存储区域的状态参数进行获取,然后基于获取的参数判定当前的存储区域是否需要进行巡检。
需要说明的是,本申请中的存储区域一般定义至少包含一个闪存物理页或物理块的区域。在本申请的实施例中,将存储区域定义其为垃圾回收时最小的擦除单位,包含至少一个闪存物理块。此外,确定状态参数的存储区域为有效数据存储区域,也即该存储区域中存储的数据包含有效数据时,才执行S11这一步骤,否则不执行。
其中,状态参数可以但不限于包括该存储区域当前RBER(residual bit errorrate,网络残余比特误码率)、擦写次数、数据已驻留时间、当前读频率、当前工作温度中一个或者多个的组合,上述状态参数均称其为数据丢失的影响因素向量。通过上述几个因素,判断当前存储区域是否存在数据丢失的风险,并在其存在数据丢失的风险时,对该存储区域进行巡检,否则,不进行巡检。
具体地,
xl=(el,pl,tl,fl,Tl),el,tl,fl,Tl∈R,pl∈N,且el,pl,tl,fl≥0 (1)
这里,l表示固态硬盘中的第l个存储区域,el表示该存储区域l当前RBER,pl为该存储区域的擦写次数,tl该存储区域存储的数据的已驻留时间,fl该存储区域的当前读频率,Tl该存储区域当前的工作温度。在一些实例中,x所包含的因子可为上式中的一个或多个,比如,xl=(el),即数据丢失的影响因素仅考虑该存储区域的当前RBER;当然,也可能在一些特殊的环境或场景中,还包含其它一些因子,这里不一一举例。
请参照图2,图2为本发明提供的存储区域状态参数关系示意图。在一具体实施例中,描述了RBER(el)、擦写次数PE(pl)、数据驻留时间Retention Time(tl)在实验中三者的关系。针对不同的PE取值,我们可以知道存储器闪存纠错对RBER约束阈值,用该阈值固定RBER,不难得到该PE下的理想的存储区域存储数据的最大安全期,通过与任意给定的存储区域当前RBER对应的Retention Time的差值不难确定该存储区域的可续存安全期rl。进一步的,上述的推导过程可通过数据采样,得到不同RBER、PE取值时对应的可续存安全期rl的多个采样点,通过建模求解得到可续存安全期rl关于擦写次数(pl)和RBER(el)的拟合函数,即
rl=λ(pl,el)
使用上述最近采样点或函数λ(pl,el)可对存储区域的可续存安全期rl进行估计,并可等价为对应的健康指数hl,进而转化为健康等级cl,从而实现分级巡检策略。关于存储区域的可续存安全期和健康指数的等价关系,以及健康指数与健康等级的转化关系,将在后面依据具体实施例给出。需要注意的是,这里我们使用了数据保存期的两个关键因子pl和el,如上述描述的,可以增加更多的影响因素对hl进行预测,比如fl读频率,Tl工作温度等。此处不做限定。
还需要说明的是,由于每个存储区域的存储时间、存储温度等因素是不断变化的,因此本申请中每个存储区域对应的状态参数也是不断变化的。
S12:基于每个存储区域的状态参数及预设状态参数-预设健康等级对应关系确定每个存储区域的健康等级;
具体地,本申请中在获取到状态参数之后,通过根据状态参数计算出对应的健康等级,然后根据健康等级的高低来判定当前存储区域存储的数据是否存在丢失的风险。具体地,可以是健康等级越高,对应的存储区域中存储的数据丢失的风险越低;相适应的,在健康等级低于某个值时,判定此时该存储区域存储的数据丢失的风险达到一定值,此时对该存储区域进行巡检,以保证该存储区域数据的可靠性。
S13:在每个巡检周期中,根据每个存储区域的健康等级确定是否对其进行巡检。
整体来看,固态硬盘仍然有固定的巡检周期,但是每个巡检周期内,根据每个存储区域的健康等级确定是否需要对其进行巡检,并不是对所有的存储区域均进行巡检,只是对符合要求的存储区域进行巡检,从每个存储区域的角度分析,每个存储区域的巡检周期是根据各自的健康等级确定的,且可以根据每个存储区域的状态参数实时调整,并不是现有技术中统一的固定值。
其中,可以将上述描述的巡检周期设定为:
比如,λmax为存储区域存储数据的最大安全期,例如180天;M为健康等级的分级个数,例如10;那么巡检周期,也即每两次巡检之间的间隔时间τ为18天。
作为一种优选的实施例,根据每个存储区域的健康等级确定是否对其进行巡检,包括:
根据每个存储区域的健康等级生成待巡检存储区域队列;
具体地,本申请中对存储区域进行巡检的方式具体限定为:根据每个存储区域的健康等级生成待巡检队列,然后只对队列中的存储区域进行巡检。
巡检队列中可以但不限于是健康等级符合要求的存储区域的地址,然后对队列中的存储区域进行巡检时,根据队列中的地址对对应的存储区域进行巡检。
对待巡检存储区域队列中的存储区域进行巡检,并对各存储区域的健康等级进行更新。
具体地,在对队列中的存储区域进行巡检后,所有存储区域中数据的存储的时间及被读的次数等均发生变化,因此,在巡检之后,各个存储区域的健康等级可能也会发生变化,所以对各存储区域的健康等级还进行更新,从而在下一巡检周期中,以更新后的健康等级生成待巡检存储区域队列,重新进行巡检的步骤。
本申请中在每个巡检周期内,并不是针对所有的存储区域进行巡检,只对部分需要巡检的存储区域进行巡检,从每个存储区域的角度分析,每个存储区域的巡检周期是根据各自的健康等级确定的,且可以根据每个存储区域的状态参数实时调整,并不是现有技术中统一的固定值。本申请基于存储区域的状态参数实时确定巡检周期,巡检周期的设定更可靠,减小了漏检的风险,且一定程度上减小了固态硬盘的工作负载和功耗。
在上述实施例的基础上:
作为一种优选的实施例,根据每个存储区域的健康等级确定是否对其进行巡检之前,还包括:
基于每个存储区域的状态参数及预设状态参数-预设健康指数模型确定每个存储区域的健康指数;
将每个存储区域的健康指数转换为对应的健康等级。
具体地,本申请中旨在限定根据状态参数得到健康等级的具体实现方式,先根据状态参数和预先建立的模型确定该存储区域对应的健康指数,然后再将健康指数转换为健康等级。
具体地,通过上述描述的状态参数,可以是上述实施例中包括的对数据丢失的几个影响因素向量,根据相关性或相互关系,确定该存储区域对应的健康指数(需要说明的是,此处的健康指数只是针对上述状态参数对当前存储区域风险性的一个预测值),然后将其转换为健康等级。其中,健康指数和健康等级这两个值对于后面的巡检来说是等价的,具体地:
这里,l表示固态硬盘中第l个区域存储区域,λmax为存储区域中有效数据可安全保存的最长时间,hl表示存储区域l对应的健康指数,rl表示存储区域l对应的可续存的预测安全期,Khr为互化系数,Bhr为转化偏移量;并且,
rl=λ(xl)
hl=η(xl)
λ、η分别代表健康指数函数和可续存安全期预测函数。关于这两个函数的具体计算方法,将在后面依据具体实施例给出。在工程中,我们常使用其简化形式,即Khr=1且Bhr=0,上述公式可写为:
针对上式中的hl,我们可有下面转化关系式:
这里,M为健康等级的分级个数,健康等级为cl。
比如,M=10表示健康等级分为10级,cl∈{0,1,2,…,9};当hl=0.85时,对应的cl=8。再比如,M=16表示健康等级分为16级,cl∈{0,1,2,…,15};当hl=0.4时,对应的cl=6。
以上只是本实施例列举的一种具体转换方法,也可以是其他的转换方法,只要能反应存储区域中存储的数据的安全性和风险性即可。
作为一种优选的实施例,根据每个存储区域的健康等级生成待巡检存储区域队列,包括:
确定每个存储区域的健康等级是否为预设巡检等级;
将健康等级为预设巡检等级的存储区域加入至待巡检存储区域队列。
具体地,在生成待巡检存储区域队列时,根据存储区域的健康等级生成待巡检存储区域队列,在其健康等级为预设巡检等级时,即判定满足巡检的要求,加入待巡检存储区域队列。其中,预设巡检等级的设置可以包括一个,也可以包括多个等级。此外,考虑到刚存储进去的数据的安全性较高,对应存储区域的巡检周期可以相对长一点,存储时间比较久的数据的安全性较低,更容易数据丢失,因此,对应存储区域的巡检周期可以相对短一些。
例如,在健康等级为自然数时,若刚存储进去的存储区域的健康等级为10,则此时,可以在健康等级依次为9、3、1、0时,将对应的存储区域加入待巡检存储区域队列,也可以是其他的设置方式,设置的原则即为,随着存储时间的增加,巡检的频率逐渐增加,巡检周期逐渐减小。
具体地,预设巡检等级的设置方式可以为:
规定当cl(健康等级)满足
cl∈{0,α0,α1,…,αS}
时,对应有效数据储存存储区域l参与本轮巡检。这里,α为正整数,是控制巡检频率松紧的参数,如常取2、3等;S为非负整数,且满足
S≤logα(M-1)
比如,M=10时,取α=2,此时S≤log29,即S∈{0,1,2,3},我们取S=2。根据上述规则,当有效数据存储区域对应的健康等级cl为0、1、2、4时才参与当前轮次的巡检;除此之外,其他不满足上述健康等级的有效数据存储区域不必参与当前轮次的巡检。再比如,M=16时,若取α=3,此时S≤log315,即S∈{0,1,2},我们取S=2。同理,当有效数据存储区域对应的健康等级cl为0、1、3、9时才参与当前轮次的巡检;除此之外,其他的有效数据存储区域不必参与当前轮次的巡检。
由此可见,采用本实施例的巡检的方法,不仅可以大大减轻巡检的负担;并且,因为每次巡检的对存储读写负载减小、效率更高,可以适当采用较小的巡检时间间隔。如图3所示(以上述M=10,α=2为例),图3为本发明提供的一种巡检示意图。假设数据在某个存储区域存放180天后由于错误增加被搬移,同样采用18天为巡检周期,传统方法一共需要巡检10次,第10次时发现问题,进行数据搬移;而分级巡检策略,根据健康等级cl采用前松后紧的策略,在保证了数据安全的基础上,仅仅需要4次巡检,可减少60%巡检的负担。
作为一种优选的实施例,对待巡检存储区域队列中的存储区域进行巡检,包括:
从待巡检存储区域队列中选取一个存储区域,获取选取的存储区域的健康指数;
判断选取的存储区域的健康指数是否在预设范围内;
若在预设范围外,则对选取的存储区域中存储的数据进行重写或搬移。
此处限定将对待巡检存储区域队列中的存储区域进行巡检的具体实现方式,具体地,从待巡检存储区域队列中选取一个存储区域(可以是依次选择,也可以是根据优先级选择,具体优先级的设置根据实际情况而定(例如将健康等级较低的存储区域的优先级设置的相对较高,一优选实施例中,重点检查健康等级为零的存储区域,当发现存在风险时及时搬移数据),本申请在此不再限定),获取该存储区域的健康指数,判断是否在预设范围内(安全范围,数据不会丢失的安全范围),若不在,则判定该存储区域的数据存在丢失或者读取错误的风险,此时,对该存储区域的数据进行重写或搬移,以延长数据的保存的期限。
作为一种优选的实施例,健康等级为自然数,对各存储区域的健康等级进行更新,包括:
将待巡检存储区域队列之外的各存储区域的健康等级均减一,作为各存储区域更新后的健康等级;
在选取的存储区域的健康指数在预设范围内时,将选取的存储区域的健康指数转换为健康等级,作为选取的存储区域更新后的健康等级;
根据各存储区域更新后的健康等级重新进入根据每个存储区域的健康等级生成待巡检存储区域队列的步骤。
对健康等级进行更新的方式,可以但不限于为:将本次巡检周期内未参与巡检的存储区域的健康等级减一,减一后的健康等级作为该存储区域新的健康等级。针对本次参与巡检的存储区域,根据巡检时的健康指数转换为健康等级,作为对应的更新后的健康等级。然后基于更新后的健康等级进入下一个巡检周期。
例如,以上述实施例中的预设巡检等级为0、1、2、4时,对对应的存储区域进行巡检,若当前存储区域的健康等级为5,则不参与巡检,并健康等级减一,作为当前存储区域额更新后的健康等级,也即是4,进入下一巡检周期,此时4满足预设巡检等级,参与本次巡检。
作为一种优选的实施例,从待巡检存储区域队列中选取一个存储区域,获取选取的存储区域的健康指数之前,还包括:
判断待巡检存储区域队列是否为空;
若为空,则进入下一巡检周期;
若不为空,则进入从待巡检存储区域队列中选取一个存储区域,获取选取的存储区域的健康指数的步骤。
具体地,由于每个巡检时,满足加入待巡检存储区域队列的存储区域的个数有限,判断是否进入下一巡检周期的方式为:判断当前巡检周期组建的待巡检存储区域队列是否为空,若为空,则表示待巡检存储区域队列中的所有的存储区域均已经完成巡检,可以进入下一周期;若不为空,则表示待巡检存储区域队列中还有未完成巡检的队列,继续对其中的存储区域进行巡检。
具体地,请参照图4,图4为本发明提供的一种固态硬盘数据巡检方法另一实施例的流程示意图,流程图描述如下:
首先,先获取所有存储区域的状态参数,基于状态参数及预设状态参数-预设健康指数模型确定每个存储区域的健康指数,将健康指数转换为对应的健康等级,在每个巡检周期内,确定每个存储区域的健康等级是否为预设巡检等级,若是,则将其加入待巡检存储区域队列,然后在对待巡检存储区域队列进行巡检时,判断队列是否为空,若为空,则表示本次巡检周期已经完成巡检,进入下一巡检周期,否则表示本次巡检还未结束,从队列中选取一个存储区域,并获取该存储区域的健康指数,判断该健康指数是否在预设范围内,若在,则表示该存储区域的数据较安全,不需要重写或搬移,此时,根据此次巡检得到的新的健康指数更新健康等级,并对不在队列中的存储区域的健康等级进行更新(更新后的健康等级为原有健康等级-1),并进入下一巡检周期;若不在预设范围内,则表示该存储区域存储的数据存在风险,此时,为保证数据的安全性,对此存储区域中的数据进行重写或者搬移操作,以延长数据的保质期。需要说明的是,每个巡检周期开始时通常需要等待若干时间,即巡检间隔时间,比如18天,然后再生成待巡检存储区域队列并触发巡检。
作为一种优选的实施例,根据每个存储区域的健康等级生成待巡检存储区域队列之后,还包括:
判断是否存在新写入数据的存储区域;
若存在,则将新写入数据的存储区域加入待巡检存储区域队列。
进一步的,在一些实施例中,对新写入数据的存储区域可以先不指定健康等级cl,等到最近的一次巡检时将其加入至待巡检存储区域队列,从而对其健康等级cl进行评估。
作为一种优选的实施例,判断是否存在新写入数据的存储区域之后,还包括:
若存在,则将新写入数据的存储区域的健康等级设定为初始等级或根据新写入数据的存储区域的状态参数及预设状态参数-预设健康等级对应关系确定新写入数据的存储区域的健康等级。
当然,在其它实施例中也可以对新写入的数据的存储区域的健康等级cl赋一初始值,比如令cl=M-1。(M为最大的健康等级,此时默认该存储区域的数据安全性较好)。或者是其他的初始等级也可以,本申请在此不再限定。
也可以是在其写入数据时,就根据该存储区域的状态参数确定对应的健康等级。
具体为哪种实现方式,本申请在此不再限定。
作为一种优选的实施例,根据每个存储区域的健康等级生成待巡检存储区域队列之后,还包括:
判断各存储区域中是否存在对应的状态参数变化超过预设值的存储区域;
若存在,则将状态参数变化超过预设值的存储区域加入待巡检存储区域队列。
当数据存储区域相关的影响数据丢失的因子发生变化时,比如工作温度长时间发生变化、高频率被读取、附近出现坏块等情况,将该数据存储区域加入到当前巡检的队列中。同健康等级为α0,α1,…,αS的有效数据存储区域巡检一样,若发现存在风险(健康指数低于预设值),则同样进行数据的提前搬移;若尚不需搬移数据,则使用新的健康等级估计值更新cl。
通过本申请中的方式可以进一步对固态硬盘中存在风险的存储区域进行巡检,可以进一步保证存储的安全性和可靠性。
请参照图5,图5为本发明提供的一种固态硬盘数据巡检装置的结构框图,该装置包括:
存储器51,用于存储计算机程序;
处理器52,用于在执行计算机程序时,实现上述的固态硬盘数据巡检方法的步骤。
为解决上述技术问题,本申请还提供了一种固态硬盘数据巡检装置,对于固态硬盘数据巡检装置的介绍请参照上述实施例,本申请在此不再赘述。
需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
专业人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
对所公开的实施例的上述说明,使本领域专业技术人员能够实现或使用本发明。对这些实施例的多种修改对本领域的专业技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其他实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。
Claims (11)
1.一种固态硬盘数据巡检方法,其特征在于,包括:
确定固态硬盘中的各个存储区域的状态参数;
基于每个所述存储区域的状态参数及预设状态参数-预设健康等级对应关系确定每个所述存储区域的健康等级;
在每个巡检周期中,根据每个所述存储区域的健康等级确定是否对其进行巡检。
2.如权利要求1所述的固态硬盘数据巡检方法,其特征在于,根据每个所述存储区域的健康等级确定是否对其进行巡检,包括:
根据每个所述存储区域的健康等级生成待巡检存储区域队列;
对所述待巡检存储区域队列中的存储区域进行巡检,并对各所述存储区域的健康等级进行更新。
3.如权利要求2所述的固态硬盘数据巡检方法,其特征在于,根据每个所述存储区域的健康等级生成待巡检存储区域队列,包括:
确定每个所述存储区域的健康等级是否为预设巡检等级;
将所述健康等级为所述预设巡检等级的存储区域加入至所述待巡检存储区域队列。
4.如权利要求3所述的固态硬盘数据巡检方法,其特征在于,对所述待巡检存储区域队列中的存储区域进行巡检,包括:
从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数;
判断选取的所述存储区域的健康指数是否在预设范围内;
若在所述预设范围外,则对选取的所述存储区域中存储的数据进行重写或搬移。
5.如权利要求4所述的固态硬盘数据巡检方法,其特征在于,所述健康等级为自然数,对各所述存储区域的健康等级进行更新,包括:
将所述待巡检存储区域队列之外的各存储区域的健康等级均减一,作为各所述存储区域更新后的健康等级;
在选取的所述存储区域的健康指数在所述预设范围内时,将选取的所述存储区域的健康指数转换为健康等级,作为选取的所述存储区域更新后的健康等级;
根据各所述存储区域更新后的健康等级重新进入根据每个所述存储区域的健康等级生成待巡检存储区域队列的步骤。
6.如权利要求5所述的固态硬盘数据巡检方法,其特征在于,从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数之前,还包括:
判断所述待巡检存储区域队列是否为空;
若为空,则进入下一巡检周期;
若不为空,则进入从所述待巡检存储区域队列中选取一个存储区域,获取选取的所述存储区域的健康指数的步骤。
7.如权利要求6所述的固态硬盘数据巡检方法,其特征在于,根据每个所述存储区域的健康等级确定是否对其进行巡检之前,还包括:
基于每个所述存储区域的状态参数及预设状态参数-预设健康指数模型确定每个所述存储区域的健康指数;
将每个所述存储区域的健康指数转换为对应的健康等级。
8.如权利要求2-7任一项所述的固态硬盘数据巡检方法,其特征在于,根据每个所述存储区域的健康等级确定是否对其进行巡检之后,还包括:
判断是否存在新写入数据的存储区域;
若存在,则将新写入数据的存储区域加入所述待巡检区域队列。
9.如权利要求8所述的固态硬盘数据巡检方法,其特征在于,判断是否存在新写入数据的存储区域之后,还包括:
若存在,则将新写入数据的存储区域的健康等级设定为初始等级或根据新写入数据的存储区域的状态参数及预设状态参数-预设健康等级对应关系确定新写入数据的存储区域的健康等级。
10.如权利要求2-7任一项所述的固态硬盘数据巡检方法,其特征在于,根据每个所述存储区域的健康等级确定是否对其进行巡检之后,还包括:
判断各所述存储区域中是否存在对应的状态参数变化超过预设值的存储区域;
若存在,则将所述状态参数变化超过所述预设值的存储区域加入所述待巡检区域队列。
11.一种固态硬盘数据巡检装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于在执行所述计算机程序时,实现如权利要求1-10任一项所述的固态硬盘数据巡检方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111679388.9A CN114356238B (zh) | 2021-12-31 | 2021-12-31 | 一种固态硬盘数据巡检方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111679388.9A CN114356238B (zh) | 2021-12-31 | 2021-12-31 | 一种固态硬盘数据巡检方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114356238A true CN114356238A (zh) | 2022-04-15 |
CN114356238B CN114356238B (zh) | 2024-06-25 |
Family
ID=81104418
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111679388.9A Active CN114356238B (zh) | 2021-12-31 | 2021-12-31 | 一种固态硬盘数据巡检方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114356238B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218274A (zh) * | 2013-03-15 | 2013-07-24 | 华为技术有限公司 | 一种预防故障累加的方法和固态硬盘 |
CN106910528A (zh) * | 2017-02-27 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种固态硬盘数据巡检的优化方法及装置 |
CN108170366A (zh) * | 2016-12-06 | 2018-06-15 | 华为技术有限公司 | 存储设备中的存储介质管理方法、装置和存储设备 |
CN109522175A (zh) * | 2017-09-18 | 2019-03-26 | 华为技术有限公司 | 一种内存评估的方法及装置 |
CN110659135A (zh) * | 2019-09-12 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种raid巡检方法、装置、电子设备及可读存储介质 |
US20200090725A1 (en) * | 2018-09-13 | 2020-03-19 | Toshiba Memory Corporation | Memory system and control method of memory system |
JP2020113132A (ja) * | 2019-01-15 | 2020-07-27 | Necプラットフォームズ株式会社 | 制御装置、ディスクアレイ装置及びパトロール診断方法 |
CN112015338A (zh) * | 2020-08-19 | 2020-12-01 | 山东大学 | 一种非易失性存储器查表巡检方法 |
-
2021
- 2021-12-31 CN CN202111679388.9A patent/CN114356238B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103218274A (zh) * | 2013-03-15 | 2013-07-24 | 华为技术有限公司 | 一种预防故障累加的方法和固态硬盘 |
CN108170366A (zh) * | 2016-12-06 | 2018-06-15 | 华为技术有限公司 | 存储设备中的存储介质管理方法、装置和存储设备 |
CN106910528A (zh) * | 2017-02-27 | 2017-06-30 | 郑州云海信息技术有限公司 | 一种固态硬盘数据巡检的优化方法及装置 |
CN109522175A (zh) * | 2017-09-18 | 2019-03-26 | 华为技术有限公司 | 一种内存评估的方法及装置 |
US20200090725A1 (en) * | 2018-09-13 | 2020-03-19 | Toshiba Memory Corporation | Memory system and control method of memory system |
JP2020113132A (ja) * | 2019-01-15 | 2020-07-27 | Necプラットフォームズ株式会社 | 制御装置、ディスクアレイ装置及びパトロール診断方法 |
CN110659135A (zh) * | 2019-09-12 | 2020-01-07 | 苏州浪潮智能科技有限公司 | 一种raid巡检方法、装置、电子设备及可读存储介质 |
CN112015338A (zh) * | 2020-08-19 | 2020-12-01 | 山东大学 | 一种非易失性存储器查表巡检方法 |
Also Published As
Publication number | Publication date |
---|---|
CN114356238B (zh) | 2024-06-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109978222B (zh) | 一种基于贝叶斯网络的风电爬坡事件概率预测方法及*** | |
US7174354B2 (en) | System and method for garbage collection in a computer system, which uses reinforcement learning to adjust the allocation of memory space, calculate a reward, and use the reward to determine further actions to be taken on the memory space | |
US10963807B2 (en) | Social collaboration in probabilistic prediction | |
Lam et al. | Tail analysis without parametric models: A worst-case perspective | |
Flage et al. | Safety constraints applied to an adaptive Bayesian condition-based maintenance optimization model | |
EP3557418A1 (en) | Resource management of resource-controlled system | |
Sharma et al. | Modeling and analysis of leftover issues and release time planning in multi-release open source software using entropy based measure | |
CN110837477B (zh) | 一种基于寿命预测的存储***损耗均衡方法及装置 | |
CN114629906A (zh) | 一种可靠的基于深度强化学习的云容器集群资源调度方法及装置 | |
CN108459991B (zh) | 一种获得设备可靠性数据的方法 | |
CN112817523B (zh) | 存储介质可靠性等级判断方法及***、存储介质、设备 | |
CN112070129B (zh) | 地面沉降风险识别方法、装置以及*** | |
CN116820730B (zh) | 多引擎计算***的任务调度方法、装置及存储介质 | |
CN114356238A (zh) | 一种固态硬盘数据巡检方法及装置 | |
KR102280298B1 (ko) | 애플리케이션 사용 패턴 분석에 기초한 메모리 관리 시스템 및 방법 | |
CN105094986B (zh) | 一种面向存储***的突发访问行为的预测方法及装置 | |
Da Silva et al. | Improving reinforcement learning with context detection | |
CN114625570A (zh) | 一种数据库备份调度方法和装置 | |
Weißbach et al. | Testing time-homogeneity of rating transitions after origination of debt | |
CN113220463B (zh) | 一种绑定策略推断方法、装置、电子设备及存储介质 | |
CN113887816A (zh) | 一种家用电器社会保有量的智能预测方法、装置及设备 | |
Ghosh et al. | Synthesizing performance-aware (m, k)-firm control execution patterns under dropped samples | |
Muñoz Medina et al. | Online learning for non-stationary A/B tests | |
WO2021040810A1 (en) | Device lifetime prediction | |
Rattanatamrong et al. | Real-time scheduling of mixture-of-experts systems with limited resources |
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 |