CN103049713B - 对存储设备中数据进行巡检的方法、设备及系统 - Google Patents

对存储设备中数据进行巡检的方法、设备及系统 Download PDF

Info

Publication number
CN103049713B
CN103049713B CN201210555086.5A CN201210555086A CN103049713B CN 103049713 B CN103049713 B CN 103049713B CN 201210555086 A CN201210555086 A CN 201210555086A CN 103049713 B CN103049713 B CN 103049713B
Authority
CN
China
Prior art keywords
data
memory block
patrolled
examined
storage device
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
CN201210555086.5A
Other languages
English (en)
Other versions
CN103049713A (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201210555086.5A priority Critical patent/CN103049713B/zh
Publication of CN103049713A publication Critical patent/CN103049713A/zh
Application granted granted Critical
Publication of CN103049713B publication Critical patent/CN103049713B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Techniques For Improving Reliability Of Storages (AREA)

Abstract

本发明公开了一种对存储设备中数据进行巡检的方法、设备及系统,涉及电子设备领域,能够合理调整巡检周期,从而可以既不过多影响存储设备性能,又能保证存储设备中的数据有效。本发明的方法主要包括:获取所述存储设备的已擦写次数;根据所述已擦写次数确定巡检时间间隔;按照所述巡检时间间隔对所述存储设备中的数据进行巡检。本发明的实施例主要用于对存储设备中数据进行巡检的过程中。

Description

对存储设备中数据进行巡检的方法、设备及系统
技术领域
本发明涉及电子设备领域,尤其涉及一种对存储设备中数据进行巡检的方法、设备及系统。
背景技术
随着电子技术的发展,用于存储电子数据的存储设备已成为人们生活和工作中不可或缺的产品,尤其是存取速度快、抗震性好的存储设备。例如,通过电量存储数据的固态硬盘(Solid State Drive,SSD)以及采用快闪记忆颗粒(NandFlash)的其他存储设备等。与此同时,如何延长存储设备的使用寿命也是业界的重要研究课题。
存储设备通常是通过电量存储数据的,而数据写入硬盘后,随着时间的推移电量会慢慢流逝,导致数据衰退从而存在数据丢失的风险。随着存储设备被擦写的次数增多,电量流失的速度便越快,存储设备中数据能保存的持续时间会缩短。当存储设备不能保证写入的数据长时间有效时,其使用寿命也就结束了。
为了延长存储设备的使用寿命,通常会采用对存储设备中的数据进行巡检的办法。具体的,设定一个固定的巡检周期,每隔一段固定时长就将存储设备中的数据读取出来,再重新写入,写入的过程相当于是给Nand Flash充满了电,从而使得数据又可继续保存一段时间。以此类推,如果总是能够在数据失效前将数据读出并重新写入,该设备便可以继续使用,不会发生数据丢失的问题,也就是说存储设备的实际使用时间便可比厂商标定的寿命更长。
在实现上述对存储设备中数据进行巡检的过程中,发明人发现现有技术中至少存在如下问题:由于巡检会对存储设备重新擦写,巡检周期的长短直接影响擦写次数,对硬盘的性能有很大的影响。如果巡检过于频繁,会影响存储设备的读写性能,并且对存储设备上正在进行的读写业务造成影响;而如果巡检较少,则可能造成存储设备中的数据失效的风险。
发明内容
本发明的实施例提供一种对存储设备中数据进行巡检的方法、设备及系统,能够合理调整巡检周期,从而可以既不过多影响存储设备性能,又能保证存储设备中的数据有效。
为达到上述目的,本发明的实施例采用如下技术方案:
本发明的第一方面,提供一种对存储设备中数据进行巡检的方法,包括:
获取所述存储设备的已擦写次数;
根据所述已擦写次数确定巡检时间间隔;
按照所述巡检时间间隔对所述存储设备中的数据进行巡检。
结合本发明的第一方面,在第一种可能的实现方式中,在根据所述已擦写次数确定巡检时间间隔之后,所述方法还包括:
根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;
若所述已擦写次数不高于预定的次数,则所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检为:采用第一巡检模式对所述存储设备中的数据进行巡检;所述第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备。
结合本发明的第一方面和第一种可能的实现方式,在第二种可能的实现方式中,所述巡检模式还包括第二巡检模式,所述方法还包括:
若所述已擦写次数高于预定的次数,则所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检为:采用第二巡检模式对所述存储设备中的数据进行巡检;
所述第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
结合本发明的第一方面以及上述任一种可能的实现方式,在第三种可能的实现方式中,所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检,包括:
获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;
对所述当前需要进行巡检的存储块中的数据进行巡检;
对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
结合本发明的第一方面和第三种可能的实现方式,在第四种可能的实现方式中,所述方法还包括:
当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;
当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
结合本发明的第一方面和第五种可能的实现方式,在第六种可能的实现方式中,当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息为重新启动巡检的时间信息;
根据所述启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
结合本发明的第一方面和第五种可能的实现方式,在第六种可能的实现方式中,所述当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检,包括:
当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;
若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
本发明的第二方面,提供一种对存储设备中数据进行巡检的设备,包括:
获取单元,用于获取所述存储设备的已擦写次数;
确定单元,用于根据所述获取单元获取的已擦写次数确定巡检时间间隔;
巡检单元,用于按照所述确定单元确定的巡检时间间隔对所述存储设备中的数据进行巡检。
结合本发明的第二方面,在第一种可能的实现方式中,该设备还包括:
模式单元,用于在所述确定单元根据所述已擦写次数确定巡检时间间隔之后,根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;
所述巡检单元,还用于当所述模式单元确定所述已擦写次数不高于预定的次数时,采用第一巡检模式对所述存储设备中的数据进行巡检;所述巡检单元采用的第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备。
结合本发明的第一方面和第一种可能的实现方式,在第二种可能的实现方式中,所述巡检模式还包括第二巡检模式;
所述巡检单元,还用于当所述模式单元确定所述已擦写次数高于预定的次数时,采用第二巡检模式对所述存储设备中的数据进行巡检;所述巡检单元采用的第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
结合本发明的第二方面和上述任一种可能的实现方式,在第三种可能的实现方式中,所述巡检单元包括:
确定子单元,用于获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;
巡检子单元,对所述确定子单元确定的所述当前需要进行巡检的存储块中的数据进行巡检;
更新子单元,用于当所述巡检子单元对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被所述巡检子单元巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
结合本发明的第二方面和上述第三种可能的实现方式,在第四种可能的实现方式中,该设备还包括:
启动获取单元,用于当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息为重新启动巡检的时间信息;
所述巡检单元,还用于根据所述启动获取单元获取的启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
结合本发明的第二方面和第四种可能的实现方式,在第五种可能的实现方式中,所述巡检单元还用于:
当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;
当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
结合本发明的第二方面和第五种可能的实现方式,在第六种可能的实现方式中,所述巡检单元还用于:
当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;
若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
本发明的第三方面,提供一种对存储设备中数据进行巡检的系统,包括:对存储设备中数据进行巡检的设备;以及,至少一个所述存储设备;
所述对存储设备中数据进行巡检的设备,用于获取所述存储设备的已擦写次数;根据所述已擦写次数确定巡检时间间隔;按照所述巡检时间间隔对所述存储设备中的数据进行巡检。
本发明的第四方面,提供一种固态硬盘,包括:控制芯片和存储介质;
其中,所述控制芯片,用于获取所述存储介质的已擦写次数;根据所述已擦写次数确定巡检时间间隔;按照所述巡检时间间隔对所述存储介质中的数据进行巡检。
本发明实施例提供的对存储设备中数据进行巡检的方法、设备及系统,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的方法相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例的一种对存储设备中数据进行巡检的系统组成示意图;
图2为本发明一实施例中的一种对存储设备中数据进行巡检的方法流程图;
图3为本发明另一实施例中的一种对存储设备中数据进行巡检的方法流程图;
图4为本发明另一实施例中的一种按照巡检时间间隔对存储块进行巡检的示意图;
图5为本发明另一实施例中的一种巡检被中断并重新启动后的巡检方法流程图;
图6为本发明另一实施例中的一种对存储设备中数据进行巡检的设备;
图7为本发明另一实施例中的一种对存储设备中数据进行巡检的设备;
图8为本发明另一实施例中的一种固态硬盘的组成示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本说明书中所描述的存储设备是指具有Nand Flash的设备,例如固态硬盘(Solid State Drive,SSD)等。本发明的方法主要应用与对具有Nand Flash的存储设备中数据的巡检过程中。如图1所示的应用场景中,控制单元与多个存储设备相连,负责执行巡检流程,在控制单元中可以包含内存,以便在巡检时将从存储设备中读出的数据暂时存放在内存中。一个控制单元可以同时控制一个或多个存储设备的巡检。例如,利用多个固态硬盘组成的存储阵列的控制器作为控制单元,存储阵列中的固态硬盘作为所述存储设备。
另外,本发明的实施例还可以应用于SSD的内部,由SSD内部的控制芯片执行巡检流程,对SSD内部的存储介质中的数据进行巡检。进一步的,还可以将SSD内部的存储介质进行分块巡检等等,对于本发明的其他应用场景,本说明书不作一一列举。
本发明一实施例提供一种对存储设备中数据进行巡检的方法,如图2所示,包括:
101、获取所述存储设备的已擦写次数。
其中,已擦写次数是指对存储设备的同一个地址空间写入数据的次数。由于存储设备的存储原理和特性,被擦写的次数越多存储颗粒的储电能力越差,电量流失越快,会导致数据有效保存的时间缩短。因此,根据已擦写次数的不同,为存储设备选定不同的巡检时间间隔,在数据失效之前进行巡检,可以有效保证存储设备中的数据不会丢失。
102、根据所述已擦写次数确定巡检时间间隔。
其中,对存储设备中数据进行巡检的设备可以每隔所述巡检时间间隔,便对存储设备中的数据进行巡检。进一步的,还可以将存储设备的存储空间划分为至少两个存储块,从而可以按照巡检时间间隔分别巡检各个存储空间,从而尽量不影响存储设备的读写业务,并且可以避免对整个存储设备反复巡检导致存储设备被频繁擦写,从而减轻对存储设备的性能折损。
103、按照所述巡检时间间隔对所述存储设备中的数据进行巡检。
其中,巡检模式可以根据存储设备被擦写的次数确定,若所述已擦写次数不高于预定的次数,则采用第一巡检模式对所述存储设备中的数据进行巡检;若所述已擦写次数高于预定的次数,则采用第二巡检模式对所述存储设备中的数据进行巡检。所述第一巡检模式可以为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备;所述第二巡检模式可以为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
进一步的,为了保证当巡检被中断并重新启动后数据不会丢失,可以采取紧急的巡检模式:获取重新启动巡检的启动时间信息;根据所述启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并优先对所述已错过巡检的存储块中的数据进行巡检。若无法获取所述启动时间信息,则对所述存储设备中全部存储块中的数据进行巡检。
进一步的,还可以配合业务进程对存储设备的读写操作,对数据进行巡检,从而减少因巡检而造成的对存储设备的擦写次数。具体的,当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。更进一步的,当所述业务进程读取存储块中的数据时,还可以设定预定阈值以判断本次业务进行的读取操作是否具有巡检价值。若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
本发明实施例提供的对存储设备中数据进行巡检的方法,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的方法相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
本发明另一实施例提供一种对存储设备中数据进行巡检的方法,如图3所示,包括:
201、获取所述存储设备的已擦写次数。
其中,可以在存储设备每一次被擦写时增加一次计数,从而统计得到所述存储设备被擦写的次数,作为已擦写次数;或者,也可以采用更简便和节约的抽样统计方式,例如间隔地统计一定时长内存储设备被擦写的次数,得到平均擦写频率,平均擦写频率和该存储设备已使用的时长的乘积即为已擦写次数。值得说明的是,已擦写次数可以不是一个精确值,能够反映存储设备性能折损的情况即可。例如,一般的固态硬盘的标定使用寿命为允许擦写3000到10000次,统计的已擦写次数可以精确到十位或者精确到百位,从而反映固态硬盘的数据可以保持有效的时长。
202、根据所述已擦写次数确定巡检时间间隔。
其中,可以预先人为地设定已擦写次数与巡检时间间隔之间的对应关系,因为数据失效的速度随擦写次数增多而便得更快,所以已擦写次数越多,巡检时间间隔应越短。例如,当固态硬盘的已擦写次数在标定使用寿命10000次以内,巡检时间间隔为2年,当已擦写次数超过该固态硬盘的标定寿命时,已擦写次数每增加1000则巡检时间间隔减少1天。或者,也可以设定已擦写次数与巡检时间间隔的映射关系表,已擦写次数小于10000次对应巡检时间间隔为2年,已擦写次数大于10000次小于15000次对应巡检时间为1.5年,已擦写次数大于15000次小于20000次对应巡检时间未1年,等等。或者,根据标定使用寿命和已擦写次数也可以计算剩余擦写次数,剩余擦写次数越少,巡检时间间隔应越短。当然,以上列出的根据已擦写次数确定巡检时间间隔的方式仅为举例,还可以以其他形式确定,本发明实施例对此不做限定。
在本实施例中,巡检时间间隔是可以随着存储设备被擦写的次数而动态调整的,用于控制巡检的频率。例如,第一次巡检后再间隔所述巡检时间间隔,便可以执行第二次巡检,以此类推。
进一步的,由于已擦写次数较多的存储设备中数据的正确保留时间会很短,为了避免已擦写次数较多的存储设备中数据丢失,可以对已擦写次数较少的存储设备和已擦写次数较多的存储设备采用不同的巡检模式,具体如下。
203、根据所述已擦写次数确定巡检模式;若所述已擦写次数不高于预定的次数,则执行步骤204,采用第一巡检模式对所述存储设备中的数据进行巡检;若所述已擦写次数高于预定的次数,则执行步骤207,采用第二巡检模式对所述存储设备中的数据进行巡检。
其中,对于已擦写次数较少的存储设备,可以采用第一巡检模式,所述第一巡检模式可以为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备。对于已擦写次数较多的存储设备,可以采用第二巡检模式,所述第二巡检模式可以为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
可以理解的是,用于判断采用何种巡检模式的所述预定的次数,也是可以人为设定的。例如,某固态硬盘的标定使用寿命是可擦写10000次,已擦写次数超过30000次的时候固态硬盘已经是老旧硬盘了,老旧硬盘中的数据被正确存储的期限可能只有几个小时,因此可以每隔一个巡检时间间隔便将数据读出,不再进行校验和修正,直接重新写入到固态硬盘中。这样,等于是给固态硬盘的nand flash充满电量,延长数据保存的时间。
进一步的,由于巡检需要对整个存储设备的存储内容周期性的读取和擦写,对存储设备本身的使用寿命造成损耗,并且读取和写入全部的数据需要大量占用传输带宽,对存储设备的正常业务读写也造成干扰。因此,可以所述存储设备的存储空间被划分为至少两个存储块,按照巡检时间间隔对存储设备中的数据进行分块巡检。存储块可以按照存储地址进行划分,例如8MB的固态硬盘可以每1MB划分为一个存储块,从而将固态硬盘划分为8个存储块。
204、按照所述巡检时间间隔读取存储块中的数据并进行校验。
具体的,所述存储设备被划分为至少两个存储块,每个存储块分别配置有与各个存储块对应的巡检时间信息。按照所述巡检时间间隔读取存储块中的数据并进行校验的方法可以为:获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;对所述当前需要进行巡检的存储块中的数据进行巡检。当任一存储块的最近一次对存储块中的数据进行巡检的时间加上巡检时间间隔,若大于或等于当前时间,则需要立即对该存储块中的数据进行巡检。其中,巡检设备可以通过自身的实时时钟(Real-Time Clock,RTC)获取当前时刻的时间信息,也可以是通过与巡检设备联网的其他设备获取的当前时刻的时间信息,或者可以通过其他设备获取初始时间信息,再通过巡检设备内部的RTC或通过巡检设备所处的操作系统的时钟进行相对计时。所述存储块的巡检时间信息,可以为该存储块最近一次被巡检的时间,也可以是该存储块下一次预计进行巡检的时间。下一次进行巡检的时间可以为最近一次被巡检的时间加上巡检时间间隔。当前时间信息和存储块的巡检时间信息,均可以为时分秒的形式。
例如,如图4所示,可以按照时间轴的形式,采用最少最近使用算法(LeastRecently Used,LRU)进行计算。图中ABCDEFG为固态硬盘按照地址空间划分得到的8个存储块,在图中标示了每个存储块最近一次巡检的时间。由于存储块A上一次巡检的时间是1点整,是8个存储块中最久没有巡检的存储块。因此,接下来将要巡检的存储块是存储块A。假设存储设备的巡检时间间隔为10小时,则11点整将对存储块A再次巡检。可以理解的是,本发明实施例中仅以时间轴的具体管理形式进行举例,还可以使用链表的方式或其他形式的时序管理方法进行管理,本发明实施例这里不做限定。
205、根据校验结果确定是否将校验后的数据写入所述存储块;若校验结果表明需要将校验后的数据写入所述存储块,则执行步骤206;若校验结果表明不需要将校验后的数据写入所述存储块,则继续执行步骤204,进行时间管理。
其中,对数据进行校验和纠错是现有技术,在这里仅做简要介绍。存储到存储设备中的数据可以带有冗余校验位,在冗余校验位中标记数据的规律和特征。例如,数据都是由0和1组成的,可以在每7位的后面带有1个冗余位,用于标记这7位中1的个数是奇数还是偶数,这样进行校验时便可根据1的个数判断这7位数据是否有错误。当然,实际应用中的校验和纠正算法有很多,比上述校验例子复杂,纠错能力也更强,常用的有错误检查和纠正(ErrorChecking and Correcting,ECC)校验等,本发明实施例对此不做限定。
可选的,可以只要校验结果表明读取的数据中有错误,便对数据中的错误进行纠正,并将校验后的数据重新写入到该存储块中。或者,也可以根据校验结果确定是否将数据写入存储块,因为从存储块中读取的数据可能没有错误或者错误很少,此时为了减少擦写次数,造成存储设备的寿命损耗,可以预先设定一个值得进行擦写的校验阈值,当校验结果表明存储块中的数据错误率超过校验阈值时,将校验后的数据重新写入存储设备;反之,若校验结果表明存储块中的数据错误率并未超过校验阈值,则可以不对存储块进行擦写。
206、将校验后的数据写入所述存储块,更新被巡检的所述存储块的巡检时间信息。
其中,校验的过程不仅包括发现数据的错误,还包括对发现的错误进行纠正,因此将校验后的数据写入存储块中。所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。更新被巡检的所述存储块的巡检时间信息,以便继续通过步骤204对各个存储块进行时间管理。例如,如图4中所示,在11点整对存储块A中的数据进行巡检后更新存储块A的巡检时间信息,这样下一次将在21点整对存储块A进行再次巡检。
207、按照所述巡检时间间隔读取所述存储块中的数据,并重新写入所述存储块,更新所述存储块的巡检时间信息。
其中,对于已擦写次数较多的老旧存储设备,数据正确保存的时间可能很短,因此可以按照存储块的巡检时间信息,每间隔一个巡检时间间隔,便将存储块中的数据读取出来并重新写入,从而对nand flash充电,避免数据丢失。
进一步的,为了减少因巡检而造成的对存储设备的擦写次数,还可以配合业务进程对存储设备的读写操作对数据进行巡检,业务进程读取和写入数据时巡检的策略不同,具体如下。
208、当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检。
其中,可以在每次业务进行读取存储块中的数据时,都触发巡检。如果业务进程读取的数据占满整个存储块,则可以直接对业务进行读取出来的数据进行巡检。如果业务进程读取的数据未占满整个存储块,也可以进行巡检,将该存储块中的数据全部读取出,仅将业务进程所需的数据发送给业务处理设备,同时对读取出来的完整存储块的数据进行巡检。具体巡检模式可以是第一巡检模式,也可以是第二巡检模式。这样,便可以在业务进程读取数据的同时实现巡检对数据的读取,减少了巡检对传输接口的占用,提高了存储设备的业务效率。
进一步的,如果业务进程频繁读取存储块中的业务数据,将可能导致巡检过于频繁,为了避免巡检过于频繁,可以设定一个值得进行巡检的预定阈值判断业务进程读取存储块中数据时,是否有必要进行巡检。当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。例如,存储块A的存储空间时1MB,可以设定预定阈值为50%,当读取的数据超过50%时才对存储块A中的数据进行巡检。若业务进程读取了存储块A中的0.3MB,则不进行巡检,若业务进程需要读取存储块A中的0.8MB数据,则可以将另外的0.2MB也一并读出,将业务进程所需数据提供给业务进程的处理设备,对1MB的存储块A中的数据进行巡检。
209、当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
例如,业务进程向存储块A中写入0.6MB的数据,此时仅对存储块A的一部分nand flash进行了充电,可以持续较长时间保证数据不丢失。但是,对于剩余的0.4MB未被业务进程擦写的数据,在达到巡检时间间隔后还是存在丢失的风险。因此,不能更新存储块A的巡检时间信息,需要按期对存储块A进行下次巡检。
然而,当业务进程向存储块A中写入了1MB数据时,存储块A的全部nandflash均被重新充电,可以持续较长时间保证数据不丢失,可以将下次巡检的时间推迟一个巡检时间间隔,更新存储块A的巡检时间信息。
进一步的,在执行上述201-209的数据巡检过程中,如果在其中任何一个步骤发生异常,例如对存储设备中数据进行巡检的设备断电了等等。由于设备断电后巡检被中断的时间不可预期,重新上电后可以采用以下方法对数据进行紧急保护,执行以下步骤210。如图5所示,本发明实施例提供的对存储设备中数据进行巡检的方法还可以包括:
210、当巡检被中断并重新启动后,获取启动时间信息;若成功获取启动时间信息,则执行步骤211;若获取启动时间信息失败,则执行步骤213。
其中,所述启动时间信息为重新启动巡检的时间信息。获取启动时间信息的方法可以为:对存储设备中数据进行巡检的巡检设备自带应急电池,可以通过自身的实时时钟(Real-Time Clock,RTC)获取启动时间信息;或者,巡检设备可以从联网的其他设备获取启动时间信息,例如存储设备上的RTC可以提供当前时间信息;或者,巡检设备自身不带应急电池,也可以在上电时从其他联网设备获取初始时间,然后通过巡检设备内部的RTC或巡检设备所处的操作系统的时钟维持实时时间。
211、根据所述启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块;若有已错过巡检的存储块,则执行步骤212;若没有已错过巡检的存储块,则执行步骤204或207。
其中,判断是否存在错过巡检的存储块的方法可以为:以任一存储块为例,最近一次对存储块中的数据进行巡检的时间与所述启动时间之间的实际间隔,若大于或等于所述巡检时间间隔,则该存储块已错过巡检;若最近一次对存储块中的数据进行巡检的时间与所述启动时间之间的实际间隔,小于所述巡检时间间隔,则该存储块没有错过巡检。类似的对每一个存储块的巡检时间信息进行判断,确定是否存在错过巡检的存储块。例如,如图5中的上图所示为断电之前各个存储块最后一次巡检的时间,巡检时间间隔为10小时,若重新上电的启动时间为12点半,则存储块A和存储块B已错过巡检,而其他存储块没有错过巡检。因此需要优先对存储块A和B中的数据进行巡检。
其中,由于步骤210-213是对于巡检发生异常后的紧急巡检方式,若存储设备中没有错过巡检的存储块,或者已经将错过巡检的存储块都巡检过了之后,可以恢复到正常的巡检方式,按照每个存储块的巡检时间间隔对各个存储块中的数据进行巡检。由于对于已被擦写的次数不同的存储设备,巡检的模式不同,恢复到正常巡检方式时也可以按照步骤203中确定的第一巡检模式执行步骤204,或者按照第二巡检模式执行步骤207。
212、优先对所述已错过巡检的存储块中的数据进行巡检。
其中,优先对已错过巡检的存储块中的数据进行巡检,是指对已错过巡检的存储块中的数据进行读取和擦写时,不用限定读取和写入的速度,也就是说由于巡检发生异常的持续时间是不可预估的,此时的数据失效的可能性比较大,需要尽快地及时地巡检,因此可以尽可能的占用传输接口提高对已错过巡检的存储块的巡检效率,避免数据丢失。
213、对所述存储设备中全部存储块中的数据进行巡检。
其中,基于与步骤212类似的理由,由于巡检发生异常的持续时间是不可预估的,当无法正确获取启动时间信息时,为了避免数据丢失,可以不限定读取和写入的速度,对存储设备中全部存储块中的数据进行巡检。
本发明实施例提供的对存储设备中数据进行巡检的方法,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的方法相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
本发明另一实施例提供一种对存储设备中数据进行巡检的设备,可以是对应于多个存储设备的控制器,也可以是一个存储设备内部的控制芯片。如图6所示,该对存储设备中数据进行巡检的设备包括:获取单元31、确定单元32、巡检单元33。
获取单元31,用于获取所述存储设备的已擦写次数;
确定单元32,用于根据所述获取单元31获取的已擦写次数确定巡检时间间隔;
巡检单元33,用于按照所述确定单元32确定的巡检时间间隔对所述存储设备中的数据进行巡检。
进一步的,该设备还包括:模式单元34。
模式单元34,用于在所述确定单元32根据所述已擦写次数确定巡检时间间隔之后,根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;
所述巡检单元33,还用于当所述模式单元34确定所述已擦写次数不高于预定的次数时,采用第一巡检模式对所述存储设备中的数据进行巡检;所述巡检单元采用的第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备。
进一步的,所述巡检模式还包括第二巡检模式;
所述巡检单元33,还用于当所述模式单元34确定所述已擦写次数高于预定的次数时,采用第二巡检模式对所述存储设备中的数据进行巡检;所述巡检单元33采用的第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
进一步的,所述巡检单元33包括:确定子单元331、巡检子单元332、更新子单元333。
确定子单元331,用于获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;
巡检子单元332,对所述确定子单元331确定的所述当前需要进行巡检的存储块中的数据进行巡检;
更新子单元333,用于当所述巡检子单元332对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被所述巡检子单元巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
进一步的,该设备还包括:启动获取单元35。
启动获取单元35,用于当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息为重新启动巡检的时间信息;
所述巡检单元33,还用于根据所述启动获取单元35获取的启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
进一步的,所述巡检单元33还用于:
当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;
当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
进一步的,所述巡检单元33还用于:
当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;
若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
本发明实施例提供的对存储设备中数据进行巡检的设备,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的技术相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
本发明另一实施例提供一种对存储设备中数据进行巡检的设备,如图7所示,包括:处理器41和存储器42。
处理器41,用于获取所述存储设备的已擦写次数;根据所述已擦写次数确定巡检时间间隔;按照所述巡检时间间隔对所述存储设备中的数据进行巡检。
所述存储器42,用于存放巡检时从所述存储设备中读取出来的数据。
进一步的,所述处理器41,还用于在根据所述已擦写次数确定巡检时间间隔之后,根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;若所述已擦写次数不高于预定的次数,则所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检为:采用第一巡检模式对所述存储设备中的数据进行巡检;所述第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备。
进一步的,所述巡检模式还包括第二巡检模式,所述处理器41,还用于若所述已擦写次数高于预定的次数,则所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检为:采用第二巡检模式对所述存储设备中的数据进行巡检;所述第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
具体的,所述处理器41,还用于获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;对所述当前需要进行巡检的存储块中的数据进行巡检;对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
进一步的,所述处理器41,还用于当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息为重新启动巡检的时间信息;根据所述启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
进一步的,所述处理器41,还用于当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
进一步的,所述处理器41,具体还用于当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
本发明实施例提供的对存储设备中数据进行巡检的设备,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的技术相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
本发明另一实施例提供一种固态硬盘,如图8所示,该固态硬盘可以包括:控制芯片51和存储介质52。
其中,所述控制芯片,用于执行如上述方法实施例中所描述的巡检操作,以对所述存储介质中的数据进行巡检。
本发明另一实施例提供一种对存储设备中数据进行巡检的系统,如图1所示,包括:对存储设备中数据进行巡检的设备,即控制单元;以及至少一个存储设备。
本发明实施例提供的固态硬盘和对存储设备中数据进行巡检的系统,根据存储设备的已擦写次数确定对数据进行巡检的巡检时间间隔,与现有技术中采用固定周期对数据进行巡检的技术相比,可以合理调整巡检周期,从而不仅能在数据失效前及时对数据进行巡检,避免数据丢失,还可以避免巡检过于频繁,尽可能的降低对存储设备的擦写次数,减少巡检对存储设备性能造成的折损。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,硬盘或光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

Claims (12)

1.一种对存储设备中数据进行巡检的方法,其特征在于,包括:
获取所述存储设备的已擦写次数;
根据所述已擦写次数确定巡检时间间隔;
根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;
若所述已擦写次数不高于预定的次数,采用第一巡检模式对所述存储设备中的数据进行巡检;所述第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验,根据校验结果确定是否将校验后的数据写入所述存储设备;
若所述已擦写次数高于预定的次数,则所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检为:采用第二巡检模式对所述存储设备中的数据进行巡检;
所述第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
2.根据权利要求1所述的对存储设备中数据进行巡检的方法,其特征在于,所述按照所述巡检时间间隔对所述存储设备中的数据进行巡检,包括:
获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;
对所述当前需要进行巡检的存储块中的数据进行巡检;
对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
3.根据权利要求2所述的对存储设备中数据进行巡检的方法,其特征在于,还包括:
当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息 为重新启动巡检的时间信息;
根据所述启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
4.根据权利要求2所述的对存储设备中数据进行巡检的方法,其特征在于,还包括:
当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检;
当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
5.根据权利要求4所述的对存储设备中数据进行巡检的方法,其特征在于,所述当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数据进行巡检,包括:
当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;
若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
6.一种对存储设备中数据进行巡检的设备,其特征在于,包括:
获取单元,用于获取所述存储设备的已擦写次数;
确定单元,用于根据所述获取单元获取的已擦写次数确定巡检时间间隔;所述巡检时间间隔随着所述存储设备已擦写次数动态调整;
模式单元,用于在所述确定单元根据所述已擦写次数确定巡检时间间隔之后,根据所述已擦写次数确定巡检模式;其中,所述巡检模式至少包括第一巡检模式;
巡检单元,用于当所述模式单元确定所述已擦写次数不高于预定的次数时,采用第一巡检模式对所述存储设备中的数据进行巡检;所述巡检单元采用的第一巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据并进行校验, 根据校验结果确定是否将校验后的数据写入所述存储设备;
所述巡检单元,还用于当所述模式单元确定所述已擦写次数高于预定的次数时,采用第二巡检模式对所述存储设备中的数据进行巡检;所述巡检单元采用的第二巡检模式为:按照所述巡检时间间隔读取所述存储设备中的数据,并重新写入所述存储设备。
7.根据权利要求6所述的对存储设备中数据进行巡检的设备,其特征在于,所述巡检单元包括:
确定子单元,用于获取当前时间信息,并根据所述当前时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定当前需要进行巡检的存储块;其中,所述存储设备的存储空间被划分为至少两个存储块,每个存储块分别配置有巡检时间信息;
巡检子单元,对所述确定子单元确定的所述当前需要进行巡检的存储块中的数据进行巡检;
更新子单元,用于当所述巡检子单元对所述当前需要进行巡检的存储块中的数据进行巡检后,更新被所述巡检子单元巡检的所述存储块的巡检时间信息;其中,所述巡检时间信息包括最近一次巡检所述存储块的时间,或根据所述最近一次巡检所述存储块的时间和所述巡检时间间隔计算得到的下一次巡检所述存储块的时间。
8.根据权利要求7所述的对存储设备中数据进行巡检的设备,其特征在于,还包括:
启动获取单元,用于当巡检被中断并重新启动后,获取启动时间信息;其中所述启动时间信息为重新启动巡检的时间信息;
所述巡检单元,还用于根据所述启动获取单元获取的启动时间信息、每个存储块的巡检时间信息以及所述巡检时间间隔,确定已错过巡检的存储块,并对所述已错过巡检的存储块中的数据进行巡检。
9.根据权利要求7所述的对存储设备中数据进行巡检的设备,其特征在于,所述巡检单元还用于:
当业务进程读取存储块中的数据时,对所述业务进程读取的存储块中的数 据进行巡检;
当业务进程向存储块写入数据,并且所述业务进程写入的数据覆盖所述存储块时,更新所述存储块的巡检时间信息。
10.根据权利要求9所述的对存储设备中数据进行巡检的设备,其特征在于,所述巡检单元还用于:
当所述业务进程读取存储块中的数据时,若所述业务进程读取的数据占所述存储块的存储空间的比例大于预定阈值时,对所述存储块中的数据进行巡检;
若所述业务进程读取的数据占所述存储块的存储空间的比例不大于预定阈值时,暂时不对所述存储块中的数据进行巡检,而是按照所述存储块的巡检时间信息对所述存储块中的数据进行巡检。
11.一种对存储设备中数据进行巡检的系统,其特征在于,包括:
如权利要求6-10中任一项所述的对存储设备中数据进行巡检的设备;
以及,至少一个所述存储设备。
12.一种固态硬盘,其特征在于,包括:
控制芯片和存储介质;
其中,所述控制芯片,用于执行如权利要求1-5中任一项的操作,以对所述存储介质中的数据进行巡检。
CN201210555086.5A 2012-12-20 2012-12-20 对存储设备中数据进行巡检的方法、设备及系统 Active CN103049713B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210555086.5A CN103049713B (zh) 2012-12-20 2012-12-20 对存储设备中数据进行巡检的方法、设备及系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210555086.5A CN103049713B (zh) 2012-12-20 2012-12-20 对存储设备中数据进行巡检的方法、设备及系统

Publications (2)

Publication Number Publication Date
CN103049713A CN103049713A (zh) 2013-04-17
CN103049713B true CN103049713B (zh) 2016-12-07

Family

ID=48062346

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210555086.5A Active CN103049713B (zh) 2012-12-20 2012-12-20 对存储设备中数据进行巡检的方法、设备及系统

Country Status (1)

Country Link
CN (1) CN103049713B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2015161443A1 (zh) * 2014-04-22 2015-10-29 华为技术有限公司 一种文件管理方法及文件系统
CN104615503B (zh) * 2015-01-14 2018-10-30 广东华晟数据固态存储有限公司 降低对存储器接口性能影响的闪存错误检测方法及装置
CN107368257B (zh) * 2016-05-12 2019-11-12 华为技术有限公司 固态存储器中的数据巡检方法及装置
CN106910528B (zh) * 2017-02-27 2020-05-29 郑州云海信息技术有限公司 一种固态硬盘数据巡检的优化方法及装置
CN107402726B (zh) * 2017-08-07 2020-05-26 苏州浪潮智能科技有限公司 一种固态硬盘数据巡检周期的确定方法及系统
CN109614052B (zh) * 2018-12-13 2022-05-10 郑州云海信息技术有限公司 一种数据巡检方法、装置和计算机可读存储介质
CN113625935B (zh) * 2020-05-08 2024-03-29 杭州海康存储科技有限公司 减少读干扰影响的方法、装置、设备及存储介质
CN112235921B (zh) * 2020-09-25 2023-06-16 深圳星标科技股份有限公司 目视助航设备使用时长的控制方法及装置

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1540511A (zh) * 2003-04-26 2004-10-27 华为技术有限公司 一种对寄存器进行巡检校验的方法
CN101529396A (zh) * 2006-10-20 2009-09-09 富士通株式会社 存储器设备以及更新调整方法
CN101826367A (zh) * 2009-06-02 2010-09-08 深圳市朗科科技股份有限公司 监测半导体存储设备可靠性的方法及其装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS56165989A (en) * 1980-05-23 1981-12-19 Fujitsu Ltd Memory patrol system
JPH07334407A (ja) * 1994-06-06 1995-12-22 Fuji Electric Co Ltd メモリのリフレッシュ方法
JP4335659B2 (ja) * 2003-12-19 2009-09-30 株式会社ルネサステクノロジ 不揮発性半導体記憶装置
US7325090B2 (en) * 2004-04-29 2008-01-29 Sandisk Il Ltd. Refreshing data stored in a flash memory
WO2009042298A1 (en) * 2007-09-26 2009-04-02 Rambus Inc. Flash memory refresh
US8423866B2 (en) * 2009-10-28 2013-04-16 SanDisk Technologies, Inc. Non-volatile memory and method with post-write read and adaptive re-write to manage errors

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1540511A (zh) * 2003-04-26 2004-10-27 华为技术有限公司 一种对寄存器进行巡检校验的方法
CN101529396A (zh) * 2006-10-20 2009-09-09 富士通株式会社 存储器设备以及更新调整方法
CN101826367A (zh) * 2009-06-02 2010-09-08 深圳市朗科科技股份有限公司 监测半导体存储设备可靠性的方法及其装置

Also Published As

Publication number Publication date
CN103049713A (zh) 2013-04-17

Similar Documents

Publication Publication Date Title
CN103049713B (zh) 对存储设备中数据进行巡检的方法、设备及系统
US9070463B2 (en) Flash memory module for realizing high reliability
US8065492B2 (en) System and method for early detection of failure of a solid-state data storage system
US7610445B1 (en) System and method for improving data integrity and memory performance using non-volatile media
US8296507B2 (en) Memory management and writing method and rewritable non-volatile memory controller and storage system using the same
US20110153917A1 (en) Storage apparatus and its control method
EP1739565A1 (en) Storage system using flash memory
US20090313444A1 (en) Semiconductor storage apparatus managing system, semiconductor storage apparatus, host apparatus, program and method of managing semiconductor storage apparatus
CN106910528A (zh) 一种固态硬盘数据巡检的优化方法及装置
CN104516471A (zh) 一种管理存储器系统的电源的方法和装置
CN104077375B (zh) 一种cc‑numa系统中节点的错误目录的处理方法和节点
EP2329371A2 (en) Evaluating effectiveness of memory management techniques selectively using mitigations to reduce errors
CN102890657A (zh) 一种减少eeprom的数据读写出错的方法
US9785438B1 (en) Media cache cleaning based on workload
KR20170042593A (ko) 파일 시스템에서의 플러싱 기법
CN102298543A (zh) 一种存储器管理方法和装置
US9116830B2 (en) Method to extend data retention for flash based storage in a real time device processed on generic semiconductor technology
JPWO2011013351A1 (ja) アクセス装置およびメモリコントローラ
CN107220001A (zh) 一种固态硬盘缓存实现方法及固态硬盘
CN102915770B (zh) 降低闪存芯片内部数据互相串扰的方法、闪存存储系统及其控制器
CN107832202A (zh) 一种检测硬盘的方法、装置及计算机可读存储介质
CN109669889A (zh) 一种轻量型Nor Flash闪存控制方法和装置
CN114356792B (zh) 基于flash预擦除技术的电能表冻结数据存储方法及电能表
CN102419734A (zh) 一种数据存储的方法及装置
EP2329384A2 (en) Memory management techniques selectively using mitigations to reduce errors

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant