CN108196980A - 误删除数据恢复方法、闪存设备及计算机可读存储介质 - Google Patents

误删除数据恢复方法、闪存设备及计算机可读存储介质 Download PDF

Info

Publication number
CN108196980A
CN108196980A CN201711466976.8A CN201711466976A CN108196980A CN 108196980 A CN108196980 A CN 108196980A CN 201711466976 A CN201711466976 A CN 201711466976A CN 108196980 A CN108196980 A CN 108196980A
Authority
CN
China
Prior art keywords
data
deleted
region
logical space
queue
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
Application number
CN201711466976.8A
Other languages
English (en)
Other versions
CN108196980B (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.)
Deyi Microelectronics Co ltd
Original Assignee
Yeestor Microelectronics 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 Yeestor Microelectronics Co ltd filed Critical Yeestor Microelectronics Co ltd
Priority to CN201711466976.8A priority Critical patent/CN108196980B/zh
Publication of CN108196980A publication Critical patent/CN108196980A/zh
Application granted granted Critical
Publication of CN108196980B publication Critical patent/CN108196980B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/14Error detection or correction of the data by redundancy in operation
    • G06F11/1402Saving, restoring, recovering or retrying
    • G06F11/1471Saving, restoring, recovering or retrying involving logging of persistent data for recovery

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Techniques For Improving Reliability Of Storages (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种误删除数据恢复方法、闪存设备及计算机可读存储介质,本发明通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,根据数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验。

Description

误删除数据恢复方法、闪存设备及计算机可读存储介质
技术领域
本发明涉及数据存储领域,尤其涉及一种误删除数据恢复方法、闪存设备及计算机可读存储介质。
背景技术
一般闪存设备中存储的文件在删除后,很难恢复出删除的文件,或者恢复的文件数据有丢失,数据能不能恢复,主要看闪存设备的系统控制策略,而不是像普通硬盘一样,比较容易就可以进行删除数据的恢复,比如可以直接在个人计算机(Personal Computer,PC)系统的回收站中找到删除文件,直接还原恢复,然而闪存设备,在PC系统中是没有回收站之类的设置可以简单还原恢复,因此若用户在不小心误操作后,删除了一些文件数据,要重新找回来,过程比较麻烦。
现在的设备系统中,对闪存设备,都提供了禁用删除通知Trim指令操作,或者说类似于清除操作,删除文件,就相当于对源文件进行数据清除,闪存设备可能在后继的处理中,对删除的区域进行了数据文件的清除,从而导致删除文件数据的丢失。
发明内容
本发明的主要目的在于提供一种误删除数据恢复方法、闪存设备及计算机可读存储介质,旨在解决现有技术中误删除文件后较难恢复的技术问题。
为实现上述目的,本发明提供一种误删除数据恢复方法,所述误删除数据恢复方法包括以下步骤:
闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域;
将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态;
响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据;
在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域;
将所述目标逻辑空间区域从删除状态调整为恢复状态。
优选地,所述将所述目标逻辑空间区域从删除状态调整为恢复状态之后,所述误删除数据恢复方法还包括:
判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值;
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除。
优选地,所述当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除,具体包括:
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序确定所述清除区域队列中最先添加的逻辑空间区域;
将所述最先添加的逻辑空间区域作为优先清除区域,对所述优先清除区域进行擦除。
优选地,所述将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态之后,所述误删除数据恢复方法还包括:
接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量;
判断当前空闲区域是否大于所述区域容量;
当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
优选地,所述当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,具体包括:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
优选地,所述当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,具体包括:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,以使所述待删除逻辑空间区域成为可写状态的空闲区域,直至所述当前空闲区域大于所述区域容量。
优选地,所述判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值之后,所述误删除数据恢复方法还包括:
当所述逻辑空间区域的数量未达到所述预设阈值时,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中。
优选地,所述闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,具体包括:
闪存设备根据清除指令接口驱动找到对应的目标接口;
通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
此外,为实现上述目的,本发明还提出一种闪存设备,所述闪存设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的误删除数据恢复程序,所述误删除数据恢复程序配置为实现如上文所述的误删除数据恢复方法的步骤。
此外,为实现上述目的,本发明还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有误删除数据恢复程序,所述误删除数据恢复程序被处理器执行时实现如上文所述的误删除数据恢复方法的步骤。
本发明提出的误删除数据恢复方法,本发明通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够使清除数据的操作处理延后,并且按照实际需求进行清除,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,不会影响设备性能,将用户误删除的数据快速找回,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验。
附图说明
图1为本发明实施例方案涉及的硬件运行环境的闪存设备结构示意图;
图2为本发明误删除数据恢复方法第一实施例的流程示意图;
图3为本发明误删除数据恢复方法第二实施例的流程示意图;
图4为本发明误删除数据恢复方法第三实施例的流程示意图。
本发明目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
本发明实施例的解决方案主要是:本发明通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够使清除数据的操作处理延后,并且按照实际需求进行清除,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,不会影响设备性能,将用户误删除的数据快速找回,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验,解决了现有技术中误删除文件后较难恢复的技术问题。
参照图1,图1为本发明实施例方案涉及的硬件运行环境的闪存设备结构示意图。
如图1所示,该闪存设备可以包括:处理器1001,例如CPU,通信总线1002、用户端接口1003,网络接口1004,存储器1005。其中,通信总线1002用于实现这些组件之间的连接通信。用户端接口1003可以包括显示屏(Display)、输入单元比如键盘(Keyboard),可选用户端接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如WI-FI接口)。存储器1005可以是高速RAM存储器,也可以是稳定的存储器(non-volatile memory),例如磁盘存储器。存储器1005可选的还可以是独立于前述处理器1001的存储装置。
本领域技术人员可以理解,图1中示出的闪存设备结构并不构成对该闪存设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。
如图1所示,作为一种计算机可读存储介质的存储器1005中可以包括操作系统、网络通信模块、用户端接口模块以及误删除数据恢复程序。
本发明闪存设备通过处理器1001调用存储器1005中存储的误删除数据恢复程序,并执行以下操作:
闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域;
将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态;
响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据;
在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域;
将所述目标逻辑空间区域从删除状态调整为恢复状态。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值;
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序确定所述清除区域队列中最先添加的逻辑空间区域;
将所述最先添加的逻辑空间区域作为优先清除区域,对所述优先清除区域进行擦除。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量;
判断当前空闲区域是否大于所述区域容量;
当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,以使所述待删除逻辑空间区域成为可写状态的空闲区域,直至所述当前空闲区域大于所述区域容量。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
当所述逻辑空间区域的数量未达到所述预设阈值时,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中。
进一步地,处理器1001可以调用存储器1005中存储的误删除数据恢复程序,还执行以下操作:
闪存设备根据清除指令接口驱动找到对应的目标接口;
通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
本实施例通过上述方案,通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够使清除数据的操作处理延后,并且按照实际需求进行清除,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,不会影响设备性能,将用户误删除的数据快速找回,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验。
基于上述硬件结构,提出本发明误删除数据恢复方法实施例。
参照图2,图2为本发明误删除数据恢复方法第一实施例的流程示意图。
在第一实施例中,所述误删除数据恢复方法包括以下步骤:
步骤S10、闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域;
需要说明的是,闪存设备是一种比硬盘驱动器更好的存储设备,所述目标主设备可以是HOST主机,也可以是其他能够发送相应指令的服务器,还可以是其他能够发送相应指令进而对闪存设备进行相应操作的设备,本实施例对此不加以限制。
可以理解的是,所述清除指令为目标主设备发送的用于清除相应数据的指令,所述闪存设备接收到所述目标主设备发送的清除指令后,根据所述清除指令能够确定需要删除的数据,即所述待删除数据,根据所述待删除数据能够查找到与所述待删除数据对应的待删除逻辑空间区域,所述待删除逻辑空间区域为用于存储所述待删除数据的逻辑空间区域。
进一步地,所述步骤S10具体包括以下步骤:
闪存设备根据清除指令接口驱动找到对应的目标接口;
通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
在具体实现中,闪存设备能够根据所述目标主设备发送的清除指令,通过清除指令接口驱动找到对应的目标接口,再通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定所述待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
步骤S20、将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态;
应当理解的是,所述清除区域队列为预先设置在所述闪存设备的清除区域内的用于记录待删除数据即对于的待删除逻辑空间区域的相关信息的队列,查找到所述待删除数据与对应的待删除逻辑空间区域后,将所述待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,即表明将所述待删除逻辑空间区域理论上是删除了,但实际上并未删除而是和所述待删除数据存在于所述闪存设备的清除区域内,以待后续数据恢复时直接恢复。
步骤S30、响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据;
可以理解的是,所述数据恢复指令为对所述待删除数据进行数据恢复的指令,所述闪存设备接收到所述目标主设备发送的数据恢复指令后,根据所述数据恢复指令确定需要进行恢复的待恢复数据。
步骤S40、在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域;
应当理解的是,通过响应于所述数据恢复指令确定的待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,即在所述清除区域队列中查找与所述待恢复数据对应的目标待删除数据及其对应的待删除逻辑空间区域,对应的待删除逻辑空间区域即为所述目标逻辑空间区域。
步骤S50、将所述目标逻辑空间区域从删除状态调整为恢复状态。
可以理解的是,当在所述清除区域队列中查找到与所述待恢复数据对应的目标逻辑空间区域后,将所述目标逻辑空间区域从删除状态调整为恢复状态,即将与所述数据恢复指令对应的待删除逻辑空间区域及对应的待删除数据进行数据恢复。
本实施例通过上述方案,通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够使清除数据的操作处理延后,并且按照实际需求进行清除,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,不会影响设备性能,将用户误删除的数据快速找回,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验。
进一步地,图3为本发明误删除数据恢复方法第二实施例的流程示意图,如图3所示,基于第一实施例提出本发明误删除数据恢复方法第二实施例,在本实施例中,所述步骤S50之后,所述误删除数据恢复方法还包括以下步骤:
步骤S60、判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值;
需要说明的是,所述逻辑空间区域的数量即为所述清除区域队列中当前存在的待删除逻辑空间区域的区域数量,所述预设阈值为预先设置的用于比较区域数量的值,可以是技术人员根据大量实验数据或训练数据获得的固定的值,也可以是一个预设阈值取值范围从中选取较为合适的值作为预设阈值,还可以是技术人员根据日常操作经验预先设置的确定的值,当然还可以是通过其他方式确定的预设阈值,本实施例对此不加以限制。
可以理解的是,通过判断所述清除区域队列的逻辑空间区域的数量与预设阈值的比对大小能够确定当前的清除区域队列是否已经饱和,是否需要进行相应清理,能够为后续对所述清除区域队列的处理操作做准备。
进一步地,所述步骤S60之后,所述误删除数据恢复方法还包括:
当所述逻辑空间区域的数量未达到所述预设阈值时,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中。
应当理解的是,当所述逻辑空间区域的数量未达到所述预设阈值时,即表明所述清除区域队列此时还未饱和,还能记录新的待删除数据和对应的待删除逻辑空间区域,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中,能够实现对所述清除区域队列的更新。
步骤S70、当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除。
需要说明的是,所述预设队列顺序为所述清除区域队列中按照记录的时间先后顺序预先设定的队列顺序,用于表明所述清除区域队列中待删除逻辑空间区域的先后顺序,也可以是根据记录的时间先后顺序之外的其他方式确定的预设队列顺序,本实施例对此不加以限制。
可以理解的是,当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序能够对所述清除区域队列中的逻辑空间区域进行擦除,即当所述逻辑空间区域的数量达到所述预设阈值后,表明所述清除区域队列已经处于饱和状态,需要进行相应清理,以免造成新的待删除数据没有多余的空间区域进行存储而造成无法进行正常数据恢复处理操作的情况发生。
应当理解的是,当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除,能够清除出新的逻辑空间区域,并对长时间未进行恢复的旧数据进行清理,合理的利用所述闪存设备的存储空间,最大可能保护用户最后删除的数据,进一步提升将用户误删除数据找回的速度,保障了用户的数据安全。
进一步地,所述步骤S70具体包括以下步骤:
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序确定所述清除区域队列中最先添加的逻辑空间区域;
将所述最先添加的逻辑空间区域作为优先清除区域,对所述优先清除区域进行擦除。
可以理解的是,按照预设队列顺序能够确定所述清除队列中最先添加的逻辑空间区域,将所述清除区域队列中最先添加的逻辑空间区域作为优先清除区域,即优先对最先添加的逻辑空间区域进行擦除,能够快出清除出新的逻辑空间区域,根据预设队列顺序清除所述优先清除区域能够最大可能保护用户最新删除的数据,达到将用户最近删除数据快速恢复的目的。
在具体实现中,一般是闪存设备会定时检查所述清除区域队列中的逻辑空间区域的数量是否达到预设阈值,当达到预设阈值时,对最先记录的逻辑空间区域进行回收擦除,并产生新的存储区域,以保障所述闪存设备对用户误删除数据进行恢复的功能的正常运行。
本实施例通过上述方案,通过判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值,当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除,能够清除出新的逻辑空间区域,并对长时间未进行恢复的旧数据进行清理,合理的利用所述闪存设备的存储空间,最大可能保护用户最后删除的数据,进一步提升将用户误删除数据找回的速度,保障了用户的数据安全,并且不用额外增加设备成本,不会影响设备性能,避免了数据丢失造成的损失,提升了用户体验。
进一步地,图4为本发明误删除数据恢复方法第三实施例的流程示意图,如图4所示,基于第二实施例提出本发明误删除数据恢复方法第三实施例,在本实施例中,所述步骤S50之后,所述误删除数据恢复方法还包括以下步骤:
步骤S51、接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量;
需要说明的是,所述数据写入指令为所述目标主设备发送的用于写入相应数据的指令,所述闪存设备接收所述数据写入指令,计算所述数据写入指令需要占用的区域容量,即执行所述数据写入指令需要调用的空闲区域的容量大小。
步骤S52、判断当前空闲区域是否大于所述区域容量;
可以理解的是,所述当前空闲区域为所述闪存设备当前处于空闲的逻辑空间区域,通过将所述当前空闲区域与所述区域容量进行比对,能够确定当前处于空闲状态的逻辑空间区域是否能够满足所述数据写入指令进行数据写入的操作。
步骤S53、当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
应当理解的是,将所述当前空闲区域与所述区域容量进行比较后,当所述当前空闲区域不大于所述区域容量时,即表明当前空闲状态的逻辑空间区域不能够满足所述数据写入指令进行数据写入的操作,此时需要对所述清除区域队列中的待删除逻辑空间区域进行擦除,清理出空闲区域,直至所述当前空闲区域大于所述区域容量。
进一步地,所述步骤S53具体包括以下步骤:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
可以理解的是,当所述当前空闲区域不大于所述区域容量时,可以根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,即优先对最先记录在所述清除区域队列中的待删除逻辑空间区域进行擦除,从而最大程度保证用户最近删除的数据的恢复可能性,并且通过依次根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,能够避免清除过多的待删除逻辑空间区域进而造成空闲存储空间的浪费,能够使所述当前空闲区域刚好大于所述区域容量,能够为执行所述数据写入指令提供恰当的空闲区域容量大小。
进一步地,所述步骤当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,具体包括:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,以使所述待删除逻辑空间区域成为可写状态的空闲区域,直至所述当前空闲区域大于所述区域容量。
应当理解的是,当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,能够快速清理出可写状态的空闲区域,以使所述当前空闲区域大于所述区域容量。
在具体实现中,当所述目标主设备需要对逻辑空间写入新的文件数据时,会发送所述数据写入指令至所述闪存设备,所述闪存设备会找到对应的缓存物理块,将相应数据写入缓存物理块中,但若当前空闲区域不足,则需要对待删除逻辑空间区域进行存储搬移,即将单次擦除操作剩下的待删除逻辑空间区域存储搬移至清除区域的其他空间区域,将单次擦除操作已经擦除的待逻辑空间区域进行回收和擦除,持续多次擦除操作直至所要擦除的逻辑空间区域擦除完毕达到能够可写状态,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除后,清理出足够的空闲区域,从而为执行所述数据写入指令提供空闲区域容量。
本实施例通过上述方案,通过接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量,判断当前空闲区域是否大于所述区域容量,当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,能够避免清除过多的待删除逻辑空间区域进而造成空闲存储空间的浪费,使所述当前空闲区域刚好大于所述区域容量,为执行所述数据写入指令提供恰当的空闲区域容量大小,合理的利用所述闪存设备的存储空间,最大可能保护用户最后删除的数据,进一步提升将用户误删除数据找回的速度,保障了用户的数据安全,并且不用额外增加设备成本,不会影响设备性能,避免了数据丢失造成的损失,提升了用户体验。
此外,本发明实施例还提出一种计算机可读存储介质,所述计算机可读存储介质上存储有误删除数据恢复程序,所述误删除数据恢复程序被处理器执行时实现如下操作:
闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域;
将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态;
响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据;
在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域;
将所述目标逻辑空间区域从删除状态调整为恢复状态。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值;
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序确定所述清除区域队列中最先添加的逻辑空间区域;
将所述最先添加的逻辑空间区域作为优先清除区域,对所述优先清除区域进行擦除。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量;
判断当前空闲区域是否大于所述区域容量;
当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,以使所述待删除逻辑空间区域成为可写状态的空闲区域,直至所述当前空闲区域大于所述区域容量。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
当所述逻辑空间区域的数量未达到所述预设阈值时,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中。
进一步地,所述误删除数据恢复程序被处理器执行时还实现如下操作:
闪存设备根据清除指令接口驱动找到对应的目标接口;
通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
本实施例通过上述方案,通过闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态,响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据,在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域,将所述目标逻辑空间区域从删除状态调整为恢复状态,能够使清除数据的操作处理延后,并且按照实际需求进行清除,能够最大可能保护用户最后删除的数据,并且不用额外增加设备成本,不会影响设备性能,将用户误删除的数据快速找回,保障了用户的数据安全,避免了数据丢失造成的损失,提升了用户体验。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者系统不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者系统所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者系统中还存在另外的相同要素。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
以上仅为本发明的优选实施例,并非因此限制本发明的专利范围,凡是利用本发明说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本发明的专利保护范围内。

Claims (10)

1.一种误删除数据恢复方法,其特征在于,所述误删除数据恢复方法包括:
闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域;
将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态;
响应于所述目标主设备发送的数据恢复指令,根据所述数据恢复指令确定待恢复数据;
在所述清除区域队列中查找与所述待恢复数据对应的目标逻辑空间区域;
将所述目标逻辑空间区域从删除状态调整为恢复状态。
2.如权利要求1所述的误删除数据恢复方法,其特征在于,所述将所述目标逻辑空间区域从删除状态调整为恢复状态之后,所述误删除数据恢复方法还包括:
判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值;
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除。
3.如权利要求2所述的误删除数据恢复方法,其特征在于,所述当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序对所述清除区域队列中的逻辑空间区域进行擦除,具体包括:
当所述逻辑空间区域的数量达到所述预设阈值时,根据预设队列顺序确定所述清除区域队列中最先添加的逻辑空间区域;
将所述最先添加的逻辑空间区域作为优先清除区域,对所述优先清除区域进行擦除。
4.如权利要求3所述的误删除数据恢复方法,其特征在于,所述将所述待删除数据及对应的待删除逻辑空间区域添加至清除区域队列中,并将所述待删除逻辑空间区域标注为删除状态之后,所述误删除数据恢复方法还包括:
接收所述目标主设备发送的数据写入指令,计算所述数据写入指令需要占用的区域容量;
判断当前空闲区域是否大于所述区域容量;
当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
5.如权利要求4所述的误删除数据恢复方法,其特征在于,所述当所述当前空闲区域不大于所述区域容量时,对所述清除区域队列中的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,具体包括:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量。
6.如权利要求5所述的误删除数据恢复方法,其特征在于,所述当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域进行擦除,直至所述当前空闲区域大于所述区域容量,具体包括:
当所述当前空闲区域不大于所述区域容量时,根据所述预设队列顺序对所述清除区域队列中排列靠前的待删除逻辑空间区域依次进行存储搬移、区域回收和擦除,以使所述待删除逻辑空间区域成为可写状态的空闲区域,直至所述当前空闲区域大于所述区域容量。
7.如权利要求2-6中任一项所述的误删除数据恢复方法,其特征在于,所述判断所述清除区域队列的逻辑空间区域的数量是否达到预设阈值之后,所述误删除数据恢复方法还包括:
当所述逻辑空间区域的数量未达到所述预设阈值时,将新的待删除数据及对应的待删除逻辑空间区域添加至所述清除区域队列中。
8.如权利要求1-6中任一项所述的误删除数据恢复方法,其特征在于,所述闪存设备响应于目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域,具体包括:
闪存设备根据清除指令接口驱动找到对应的目标接口;
通过所述目标接口接收所述目标主设备发送的清除指令,根据所述清除指令确定待删除数据,并查找与所述待删除数据对应的待删除逻辑空间区域。
9.一种闪存设备,其特征在于,所述闪存设备包括:存储器、处理器及存储在所述存储器上并可在所述处理器上运行的误删除数据恢复程序,所述误删除数据恢复程序配置为实现如权利要求1至8中任一项所述的误删除数据恢复方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有误删除数据恢复程序,所述误删除数据恢复程序被处理器执行时实现如权利要求1至8中任一项所述的误删除数据恢复方法的步骤。
CN201711466976.8A 2017-12-28 2017-12-28 误删除数据恢复方法、闪存设备及计算机可读存储介质 Active CN108196980B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711466976.8A CN108196980B (zh) 2017-12-28 2017-12-28 误删除数据恢复方法、闪存设备及计算机可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711466976.8A CN108196980B (zh) 2017-12-28 2017-12-28 误删除数据恢复方法、闪存设备及计算机可读存储介质

Publications (2)

Publication Number Publication Date
CN108196980A true CN108196980A (zh) 2018-06-22
CN108196980B CN108196980B (zh) 2022-04-12

Family

ID=62585934

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711466976.8A Active CN108196980B (zh) 2017-12-28 2017-12-28 误删除数据恢复方法、闪存设备及计算机可读存储介质

Country Status (1)

Country Link
CN (1) CN108196980B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888757A (zh) * 2019-10-28 2020-03-17 江西咚咚体育有限公司 一种数据自动备份的方法、装置和计算机可读存储介质
CN111045868A (zh) * 2019-12-13 2020-04-21 上海中通吉网络技术有限公司 一种数据库数据自动恢复的方法和装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567210A (zh) * 2010-12-27 2012-07-11 厦门市美亚柏科信息股份有限公司 闪存芯片数据分析环境重组方法和装置
CN103902406A (zh) * 2012-12-31 2014-07-02 杨威锋 高可靠性固态存储设备的映射表信息的保存和恢复技术
CN105487939A (zh) * 2014-10-10 2016-04-13 中兴通讯股份有限公司 一种闪存文件的数据恢复方法和装置
CN105653402A (zh) * 2016-01-12 2016-06-08 浪潮(北京)电子信息产业有限公司 一种ssd以及用于ssd的数据恢复方法
CN106294007A (zh) * 2016-08-05 2017-01-04 联想(北京)有限公司 一种数据恢复方法及装置
CN106569742A (zh) * 2016-10-20 2017-04-19 华为技术有限公司 存储管理方法及存储设备
US20170300388A1 (en) * 2016-04-15 2017-10-19 Netapp, Inc. Nvram loss handling

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102567210A (zh) * 2010-12-27 2012-07-11 厦门市美亚柏科信息股份有限公司 闪存芯片数据分析环境重组方法和装置
CN103902406A (zh) * 2012-12-31 2014-07-02 杨威锋 高可靠性固态存储设备的映射表信息的保存和恢复技术
CN105487939A (zh) * 2014-10-10 2016-04-13 中兴通讯股份有限公司 一种闪存文件的数据恢复方法和装置
CN105653402A (zh) * 2016-01-12 2016-06-08 浪潮(北京)电子信息产业有限公司 一种ssd以及用于ssd的数据恢复方法
US20170300388A1 (en) * 2016-04-15 2017-10-19 Netapp, Inc. Nvram loss handling
CN106294007A (zh) * 2016-08-05 2017-01-04 联想(北京)有限公司 一种数据恢复方法及装置
CN106569742A (zh) * 2016-10-20 2017-04-19 华为技术有限公司 存储管理方法及存储设备

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
ABDULAZIZ ALDAEJ等: "Solid state drive data recovery in open source environment", 《2017 2ND INTERNATIONAL CONFERENCE ON ANTI-CYBER CRIMES (ICACC)》 *
苏芊: "iOS终端数字取证研究", 《中国优秀博硕士学位论文全文数据库(硕士) 信息科技辑》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110888757A (zh) * 2019-10-28 2020-03-17 江西咚咚体育有限公司 一种数据自动备份的方法、装置和计算机可读存储介质
CN111045868A (zh) * 2019-12-13 2020-04-21 上海中通吉网络技术有限公司 一种数据库数据自动恢复的方法和装置
CN111045868B (zh) * 2019-12-13 2023-12-05 上海中通吉网络技术有限公司 一种数据库数据自动恢复的方法和装置

Also Published As

Publication number Publication date
CN108196980B (zh) 2022-04-12

Similar Documents

Publication Publication Date Title
CN102511044B (zh) 一种数据删除方法及装置
CN109542358A (zh) 一种固态硬盘冷热数据分离方法、装置及设备
US10402114B2 (en) Information processing system, storage control apparatus, storage control method, and storage control program
JP2014522537A (ja) 使用によるフラッシュ・ベースの記憶装置へのデータ配置の管理
CN106484323A (zh) 一种固态存储的损耗均衡方法及系统
CN102622310A (zh) 无效数据擦除方法、装置及系统
CN106294007B (zh) 一种数据恢复方法及装置
CA2673434A1 (en) Memory device performance enhancement through pre-erase mechanism
CN108205473B (zh) 内存处理方法及装置、计算机装置及计算机可读存储介质
CN107203337A (zh) 用户可配置的被动后台操作
CN107844432B (zh) 一种固态硬盘动态垃圾回收的方法及固态硬盘
KR20140003805A (ko) 데이터 저장 장치 및 그 동작 방법
CN108196980A (zh) 误删除数据恢复方法、闪存设备及计算机可读存储介质
US10592148B2 (en) Information processing system, storage control apparatus, storage control method, and storage control program for evaluating access performance to a storage medium
CN111324303A (zh) Ssd垃圾回收方法、装置、计算机设备及存储介质
CN110515552A (zh) 一种存储设备数据快速写入的方法及系统
CN110427158A (zh) 固态硬盘的写入方法及固态硬盘
CN103377130A (zh) 数据存储设备以及相应的数据存储方法
CN106844222A (zh) 固态硬盘的数据处理的方法和设备
CN106293497A (zh) 瓦记录感知文件系统中垃圾数据的回收方法和装置
CN108287761B (zh) 内存回收方法及装置、终端设备及计算机可读存储介质
CN105653466B (zh) 数据储存装置以及快闪存储器控制方法
KR20170111199A (ko) 데이터 저장 장치 및 그것의 동작 방법
US20060253616A1 (en) System for managing data on memory device using file system
CN103605563A (zh) 用于避免误操作的系统和方法

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
CP03 Change of name, title or address

Address after: 518000 area a, 7th floor, building A1, Shenzhen digital technology park, 17 Gaoxin South 7th Road, high tech Zone community, Yuehai street, Nanshan District, Shenzhen City, Guangdong Province

Patentee after: Deyi Microelectronics Co.,Ltd.

Address before: 518000 09-2, 10-11 unit, 6 building, Changhong science and technology building, 18 South Road, science and Technology Park, Nanshan District, Shenzhen, Guangdong, China 18

Patentee before: YEESTOR MICROELECTRONICS Co.,Ltd.

CP03 Change of name, title or address