CN110688070B - 固态硬盘数据表的管理方法、装置、存储介质及电子设备 - Google Patents

固态硬盘数据表的管理方法、装置、存储介质及电子设备 Download PDF

Info

Publication number
CN110688070B
CN110688070B CN201910927623.6A CN201910927623A CN110688070B CN 110688070 B CN110688070 B CN 110688070B CN 201910927623 A CN201910927623 A CN 201910927623A CN 110688070 B CN110688070 B CN 110688070B
Authority
CN
China
Prior art keywords
effective data
type
mapping table
index information
quantity value
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
CN201910927623.6A
Other languages
English (en)
Other versions
CN110688070A (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.)
Jiangsu Xinsheng Intelligent Technology Co ltd
Original Assignee
Jiangsu Xinsheng Intelligent Technology 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 Jiangsu Xinsheng Intelligent Technology Co ltd filed Critical Jiangsu Xinsheng Intelligent Technology Co ltd
Priority to CN201910927623.6A priority Critical patent/CN110688070B/zh
Publication of CN110688070A publication Critical patent/CN110688070A/zh
Application granted granted Critical
Publication of CN110688070B publication Critical patent/CN110688070B/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/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0655Vertical data movement, i.e. input-output transfer; data movement between one or more hosts and one or more storage devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/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]

Abstract

本发明实施例提出一种固态硬盘数据表的管理方法、装置、存储介质及电子设备。当第一类映射表中的索引信息变化时,通过更新有效数据变化表中的有效数据数量值,将有效数据数量值暂存,并在获得第一反馈信息后,将有效数据数量值更新至有效数据表中,从而保证已写入的索引信息和各个块的有效数据数量值对应,并且通过有效数据变化表暂存有效数据数量值的流程简单,从而降低了负载,提升了管理效率。

Description

固态硬盘数据表的管理方法、装置、存储介质及电子设备
技术领域
本申请涉及存储技术领域,具体而言,涉及一种固态硬盘数据表的管理方法、装置、存储介质及电子设备。
背景技术
在NAND Flash中有特定的存储单元用于存储逻辑地址与物理地址的对应关系(Map Table)和块内的有效数据计数(VC Table)。CPU需要查询Map Table和VC Table以调取NAND Flash中存储信息。所以需要保证Map Table和VC Table之间的一致性和准确性。
现有技术中,在下刷Map Table和VC Table之间,将新的主机数据记录到反向映射表中,等待完成Map Table和VC Table的下刷后,再从反向映射表中将主机的修改同步到Map Table和VC Table中,确保NAND Flash中记录的Map Table和VC Table是一致的。由于增加了反向映射表向Map Table同步的流程,因此在每一次下刷Map Table的过程中,用户数据的逻辑地址和物理地址的映射关系均需要写入反向映射表。在Map Table下刷完成后,又要将反向映射表更新至Map Table,从而对盘片性能造成影响。
发明内容
有鉴于此,本发明的目的在于提供一种固态硬盘数据表的管理方法、装置、存储介质及电子设备,以改善上述问题。
为了实现上述目的,本发明实施例采用的技术方案如下:
第一方面,本发明实施例提供了一种固态硬盘数据表的管理方法,所述方法包括:
当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值;
所述有效数据数量值表征块内有效数据的数量;所述第一类映射表中的索引信息对应所述有效数据数量值;
获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中;
所述第一类反馈信息表征所述有效数据表的写入动作已完成。
第二方面,本发明实施例还提供了一种固态硬盘数据表的管理装置,所述装置包括:
有效数据变化表单元:用于当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值;
所述有效数据数量值表征块内有效数据的数量;所述第一类映射表中的索引信息对应所述有效数据数量值;
有效数据表单元:用于获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中;
所述第一类反馈信息表征所述有效数据表的写入动作已完成。
第三方面,本发明实施例还提供了一种存储介质,所述存储介质存储有计算机指令,所述计算机指令在被读取并运行时执行第一方面所述的固态硬盘数据表的管理方法。
第四方面,本发明实施例还提供了一种电子设备,所述电子设备包括处理器、存储器,所述存储器存储有计算机指令,所述处理器读取并运行所述计算机指令,以实现第一方面所述的固态硬盘数据表的管理方法。
本发明实施例提供的固态硬盘数据表的管理方法、装置、存储介质及电子设备的有益效果为:当第一类映射表中的索引信息变化时,通过更新有效数据变化表中的有效数据数量值,将有效数据数量值暂存,并在获得第一反馈信息后,将有效数据数量值更新至有效数据表中,从而保证已写入的索引信息和各个块的有效数据数量值对应,并且通过有效数据变化表暂存有效数据数量值的流程简单,从而降低了负载,提升了管理效率。
为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
图1示出了本发明实施例提供的映射表中修改前的索引信息;
图2示出了本发明实施例提供的映射表中修改后的索引信息;
图3示出了本发明实施例提供的应用架构示意图;
图4示出了本发明实施例提供的电子设备的结构应用示意图;
图5示出了本发明实施例提供的固态硬盘数据表的管理方法的流程示意图;
图6示出了本发明实施例提供的另一种可能的固态硬盘数据表的管理方法的流程示意图;
图7示出了本发明实施例提供的另一种可能的固态硬盘数据表的管理方法的流程示意图;
图8示出了本发明实施例提供的另一种可能的固态硬盘数据表的管理方法的流程示意图;
图9示出了本发明实施例提供的S106的子步骤流程示意图;
图10示出了本发明实施例提供的固态硬盘数据表的管理装置的功能单元示意图;
图11示出了本发明实施例提供的另一种可能的固态硬盘数据表的管理装置的功能单元示意图。
图标:100-电子设备;101-处理器;102-第一存储器;103-总线;104-第二存储区;105-通信接口;201-快照管理单元;202-映射表单元;203-有效数据变化表单元;204-有效数据表单元。
具体实施方式
下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
现有的技术,固态硬盘中设置有映射总表(Map Table)和有效数据表(VC Table)。该映射总表由多个映射表组成,该映射表中记录着索引信息,即主机逻辑地址和固态硬盘中的存储单元的物理地址的对应关系,图1示出了其中一个映射表中的索引信息。在一种可能的实现方式中,当对某一段逻辑地址,执行写操作或擦除操作时,需要适应性地修改与之映射表中索引信息,以保证调取该段逻辑地址中的内容的正确性。
有效数据表记录固态硬盘中各个块内的有效数据的数量,请继续参阅图1,若0、1、2、3、4…N等N个逻辑地址分别与x、y、z、a、b…c等N个物理地址对应,此时x、y、z、a、b…c等N个物理地址携带的数据均为有效数据。当图1所示的映射表中的索引信息变化时,如图2所示,并且x、y、z、a、b…c等N个物理地址并没有与其他的逻辑地址建立对应的索引关系,此时x、y、z、a、b…c等N个物理地址携带的数据均不再是有效数据。每一个块内的物理地址为绝对地址,是不会改变的,通过统计块内与逻辑地址建立对应索引关系的物理地址的数量,即可获得每一个块内的有效数据的数量。在一种可能的实现方式中,当需要选择一个块被擦除时,可以选择有效数据的数量最少的块。故而需要保障固态硬盘存储的映射总表中的索引信息和有效数据表中的各个块内的有效数据的数量的对应性。
上述的映射总表和有效数据表均存储于固态硬盘中指定存储区域内。在一种可能实现方式中,将映射总表和有效数据表缓存于系统内存,即动态随机存取存储器(DynamicRandom Access Memory,DRAM),以提高读写性能。同时,周期性地将内存中的映射总表和有效数据表下刷到固态硬盘中。在一种可能的实现方式中,可以引入反向映射表,在下刷映射表和有效数据表之间,将新的主机数据记录到反向映射表中,等待本次下刷完成,再依据反向映射表中的新的主机数据记录,更新映射总表和有效数据表。以保障固态硬盘存储的映射总表中的索引信息和有效数据表中的各个块内的有效数据的数量的对应性。
映射总表包括上万个、甚至几万个映射表,反向映射表与映射总表对应。通过发明人长时间研究、仔细分析发现每次新的主机数据记录可能仅需要修改几个、甚至是一个映射表中的索引关系,也就只需要修改对应的块内的有效数据。从而发现在下刷映射表和有效数据表之间,将新的主机数据记录到反向映射表中,等待本次下刷完成,再依据反向映射表中的新的主机数据,更新映射总表和有效数据表的流程复杂,会对固态硬盘的性能造成影响。
为了解决上述问题,本发明实施例在内存中构建了如图3所示的架构。请参阅图3,Map Table表征映射总表,映射总表由多个映射表组成。VC Table表征有效数据表,有效数据表中记录各个块的有效数据数量值。VC Table Duplication表征有效数据变化表,有效数据变化表与有效数据表对应,有效数据表所需的存储空间并不大,故而有效数据变化表所需的存储空间也不大。Snapshot表征快照单元,快照单元与映射表对应,明显地快照单元的大小远远小于反向映射表。需要说明的是,图3中的各个块并不属于该架构,在图3中示出,仅是为了便于表述映射表和有效数据表之间的关系。通过增加有效数据变化表和快照单元,既能保证写入到固态硬盘中的索引信息和各个块内的有效数据数量值对应,又减少了占用内存的空间,并且流程更简单,管理更方便,有利于提升固体硬盘的性能。
在一种可能的实现方式中,仅需要增加有效数据变化单元也可以解决上述问题。
本发明实施例提供的固态硬盘数据表的管理方法,应用于与电子设备100。请参照图4,是电子设备100的部分结构示意图。电子设备100包括处理器101、第一存储器102、总线103以及第二存储器104。处理器101、第一存储器102、第二存储器104通过总线103连接,处理器101用于执行第一存储器102或第二存储器104中存储的可执行模块,例如计算机程序。
处理器101可能是一种集成电路芯片,具有信号的处理能力。在实现过程中,固态硬盘数据表的管理方法的各步骤可以通过处理器101中的硬件的集成逻辑电路或者软件形式的指令完成。上述的处理器101可以是通用处理器,包括中央处理器(CentralProcessing Unit,简称CPU)、网络处理器(Network Processor,简称NP)等;还可以是数字信号处理器(Digital Signal Processor,简称DSP)、专用集成电路(ApplicationSpecific Integrated Circuit,简称ASIC)、现成可编程门阵列(Field-ProgrammableGate Array,简称FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
第一存储器102为高速随机存取存储器(Random Access Memory,RAM),在一种可能的实现方式中,将动态随机存取存储器(Dynamic Random Access Memory,DRAM)作为高速随机存取存储器。
第二存储器104为非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器或者固态硬盘。
总线103可以是ISA(Industry Standard Architecture)总线、PCI(PeripheralComponent Interconnect)总线或EISA(Extended Industry Standard Architecture)总线等。图4中仅用一个双向箭头表示,但并不表示仅有一根总线103或一种类型的总线103。
固态硬盘数据表的管理装置包括至少一个可以软件或固件(firmware)的形式存储于第一存储器102中或存储于第二存储器104中或固化在电子设备100的操作系统(operating system,OS)中的软件功能模块。处理器101在接收到执行指令后,执行所述程序以实现固态硬盘数据表的管理方法。
可选地,该电子设备100还可以包括至少一个通信接口105,(可以支持有线或者无线的通信协议)以实现与外部的其它设备之间的通信连接。在一种可能的实现方式中,电子设备100通过通信接口105与人机交互设备通讯,以接收用户输入的控制指令,如写指令或擦除指令等。
应当理解的是,图4所示的结构仅为电子设备100的结构应用示意图,电子设备100还可包括比图4中所示更多或者更少的组件,或者具有与图4所示不同的配置。图4中所示的各组件可以采用硬件、软件或其组合实现。
本发明实施例提供的一种固态硬盘数据表的管理方法,应用于电子设备100,具体的流程,请参见图5:
S106:当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值。
具体地,有效数据数量值表征块内有效数据的数量。第一类映射表存储于第一存储器102中。第一类映射表可以为处于已写入状态的映射表,即第一类映射表中的索引信息已经写入到第二存储器104中,但与已写入的索引信息对应的有效数据表中的数量值还未写入到第二存储器104中。
第一类映射表中的索引信息变化时,如果直接修改记录于有效数据表中的,对应的块的有效数据数量值,那么本次将有效数据表中的数量值写入到第二存储器104中后,第二存储器104中存储索引信息和有效数据数量值不对应。第一类映射表中的索引信息对应有效数据数量值。故当第一类映射表中的索引信息变化时,依据第一类映射表中变化前后的索引信息,更新有效数据变化表中的有效数据数量值。
请继续参阅图1、图2,例如,图1表征第一类映射表中变化前的索引信息,图2表征第一类映射表中变化后的索引信息,其中,x、y、z、a、b…c为属于第A块的N个物理地址,α、β及γ为属于第B块的物理地址。此例为了便于理解,设定第A块和第B块内没有其他的物理地址,在此不做限定。那么修改前第A块内的有效数据数量值为N,修改后第A块内的有效数据数量值为0;修改后第B块内的有效数据数量值为3。此时有效数据变化表中包括第A块和第B块的有效数据数量值。在一种可能的实现方式中,有效数据变化表可以包括更多或更少块的有效数据数量值。
S107:获得第一类反馈信息后,将有效数据数量值更新至有效数据表中。
具体地,第一类反馈信息表征有效数据表的写入动作已完成。在一种可能的实现方式中,每当有效数据表是整体写入到第二存储器104后,第二存储器104向处理器101发送第一类反馈信息。此时第二存储器104中存储的索引信息和各个块的有效数据数量值对应。
综上所述,本发明实施例提供的固态硬盘数据表的管理方法中,当第一类映射表中的索引信息变化时,通过更新有效数据变化表中的有效数据数量值,将有效数据数量值暂存,并在获得第一反馈信息后,将有效数据数量值更新至有效数据表中,从而保证已写入的索引信息和各个块的有效数据数量值对应,并且通过有效数据变化表暂存有效数据数量值的流程简单,从而降低了负载,提升了管理效率。
在图5的基础上,本发明实施例还提供了一种固态硬盘数据表的管理方法,请参见图6,该方法包括:
S101:依据第二类映射表生成对应的快照单元。
具体地,第二类映射表存储于第一类存储器102中。第二类映射表为处于写入状态的映射表,即第二类映射表正在被下刷到第二存储器104中。每当存在第二类映射表时,即生成与之对应的快照单元。
S102:依据写请求命令更新快照单元中的索引信息。
具体地,写请求命令中携带有起始逻辑地址和数据长度。依据起始逻辑地址和数据长度可分析出索引关系需要改变的逻辑地址。若索引关系需要改变的逻辑地址存储于第二类映射表中,则将改变后的索引关系存储在快照单元中,即依据写请求命令更新快照单元中的索引信息,此时快照单元中的索引信息发生变化。
快照单元中的索引信息对应有效数据数量值。当快照单元中的索引信息变化,执行S103。
S103:更新有效数据变化表中的有效数据数量值。
具体地,依据快照单元中变化前后的索引信息,更新有效数据变化表中的有效数据数量值。
S104:当获得第二类反馈信息时,根据快照单元中的索引信息更新第二类映射表中的索引信息。
具体地,第二类反馈信息表征第二类映射表的写入动作已完成。当第二类映射表完整的写入第二存储器104中时,第二存储器104向处理器101反馈信息,即第二反馈信息。当获得第二类反馈信息时,且未获得对应的第一类反馈信息,此时可以更新第二类映射表中的索引信息。快照单元用于在接收到第二类反馈信息前,存储对第二类映射表的更新,故当快照单元中的索引信息变化,且获得第二类反馈信息时,更新第二类映射表中的索引信息,即将此时快照单元中的索引信息更新至第二类映射表中,以保证第二类映射表的写入动作顺利完成,同时保证第二类映射表中的索引信息的准确性。
在图6的基础上,关于快照单元的处理,本申请实施例还提供了一种可能的实现方式,请参考图7,固体硬盘数据表的管理方法还包括:
S105:删除快照单元。
具体地,在第一存储器102中,对应不同的或相同的映射表,不间断的生成快照单元,为了防止数据冗余,通过删除过期的快照单元,以降低负载。
在图5的基础上,本发明实施例还提供了一种可能的固态硬盘数据表的管理方法,请参见图8,该方法包括:
S105:当快照单元中的索引信息未变化,且获得第二类反馈信息时,删除快照单元。
具体地,快照单元中的索引信息未变化,且对应的映射表为第一类映射表时,删除该快照单元,以减少数据冗余。
在图5的基础上,对于S106中的内容,本发明实施例还提供了一种可能的实现方式,请参见图9,S106包括:
S106-1:当第一类映射表中的索引信息变化时,生成有效数据变化表。
具体地,有效数据变化表携带有效数据数量值。在一种可能的实现方式中,请继续参阅图1、图2,当第一类映射表中的索引信息变化时,可知,此时第A块和第B块内的有效数据数量值发变化,依据第A块和第B块在当前有效数据表中对应的有效数据数量值,生成有效数据变化表,此时有效数据变化表中记录了第一类映射表中的索引信息变化前,第A块和第B块的有效数据数量值。在此并未限定有效数据变化表携带的内容,其中可以携带更多或更少块的有效数据数量值。
S106-2:更新有效数据变化表中的有效数据数量值。
具体地,依据第一类映射表中变化前后的索引信息,更新有效数据变化表中的有效数据数量值。
继续参阅图9,该方法还包括:
S108:删除有效数据变化表。
与删除快照单元同理。
在一种可能的实现方式中,将更新后的映射表中的索引信息和更新后的有效数据表中的有效数据数量值写入第二存储器104。
本发明实施例还提供了一种可能的实现方式,当依据写请求命令判断出需要更新的映射表即不是第一类有效映射表,又不是第二类有效映射表时,直接更新该映射表和有效数据表,避免引入反向映射表的同时,保证了映射表中的索引信息和有效数据表中的有效数据值的一致性。
请参阅图10,图10为本发明实施例提供的一种固态硬盘数据表的管理装置,可选的,该固态硬盘数据表的管理装置可以采用电子设备100的实现方式。需要说明的是,本实施例所提供的固态硬盘数据表的管理装置,其基本原理及产生的技术效果和上述实施例相同,为简要描述,本实施例部分未提及之处,可参考上述的实施例中相应内容。
固态硬盘数据表的管理装置包括:有效数据变化表单元203以及有效数据表单元204。
有效数据变化表单元203:用于当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值。在一种可能的实现方式中,有效数据变化表单元203可以执行上述的S106。
其中,有效数据数量值表征块内有效数据的数量;第一类映射表为处于已写入状态的映射表;第一类映射表中的索引信息对应有效数据数量值。
有效数据表单元204:用于获得第一类反馈信息后,将有效数据数量值更新至有效数据表中。在一种可能的实现方式中,有效数据表单元204可以执行上述的S107。
其中,第一类反馈信息表征有效数据表的写入动作已完成。
请参见图11,本发明实施例还提供了一种可能的固态硬盘数据表的管理装置,包括:快照管理单元201和映射表单元202。
快照管理单元201,用于依据第二类映射表生成对应的快照单元,其中,第二类映射表为处于写入状态的映射表;依据写请求命令更新快照单元中的索引信息。具体地,快照管理单元201可以执行上述的S101和S102。
有效数据变化表单元203还用于当快照单元中的索引信息变化时,更新有效数据变化表中的有效数据数量值。具体地,有效数据变化表单元203可以执行上述的S103。
映射表单元202,用于当获得第二类反馈信息时,根据快照单元中的索引信息更新第二类映射表中的索引信息;第二类反馈信息表征第二类映射表的写入动作已完成;快照单元用于在接收到第二类反馈信息前,存储对第二类映射表的更新的索引信息。具体地,映射表单元203可以执行上述的S104。
在一种可能的实现方式中,有效数据变化表单元202具体用于当第一类映射表中的索引信息变化时,生成有效数据变化表;其中,有效数据变化表携带有效数据数量值;更新有效数据变化表中的有效数据数量值;在获得第一类反馈信息后,将有效数据数量值更新至有效数据表中之后,删除有效数据变化表。具体地,有效数据变化表单元203可以执行上述的S106-1、S106-2及S108。
在一种可能的实现方式中,快照管理单元201还用于删除快照单元。具体地,快照管理单元201还可以执行上述的S105。
本发明实施例还提供了一种存储介质,该存储介质存储有计算机指令,该计算机指令在被读取并运行时执行上述实施例的固态硬盘数据表的管理方法。该存储介质可以包括内存、闪存、寄存器或者其结合等。
下面提供一种电子设备100,该电子设备100如图4所示,可以实现上述的固态硬盘数据表的管理方法;具体的,该电子设备100包括:处理器101,存储器102、总线103。处理器101可以是基带芯片。
除了图中该电子设备100可能具有的器件外,该电子设备100还可以包含:电池、各类传感器、触摸屏、射频电路等等。可选地,该电子设备100可以为:PDA、智能手机、平板、智能穿戴等产品。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,也可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,附图中的流程图和框图显示了根据本发明的多个实施例的装置、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或代码的一部分,所述模块、程序段或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现方式中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
另外,在本发明各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
所述功能如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (8)

1.一种固态硬盘数据表的管理方法,其特征在于,所述方法包括:
当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值;
所述有效数据数量值表征块内有效数据的数量;所述第一类映射表中的索引信息对应所述有效数据数量值;
获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中;
所述第一类反馈信息表征所述有效数据表的写入动作已完成;
其中,在获得第一反馈信息之前,所述方法还包括:
依据第二类映射表生成对应的快照单元,其中,所述第二类映射表为处于写入状态的映射表;
依据写请求命令更新所述快照单元中的索引信息;其中,所述快照单元中的索引信息对应所述有效数据数量值;
当所述快照单元中的索引信息变化时,更新所述有效数据变化表中的有效数据数量值;
当获得第二类反馈信息时,根据所述快照单元中的索引信息更新所述第二类映射表中的索引信息;
所述第二类反馈信息表征所述第二类映射表的写入动作已完成;所述快照单元用于在接收到所述第二类反馈信息前,存储对所述第二类映射表的更新的索引信息。
2.根据权利要求1所述的固态硬盘数据表的管理方法,其特征在于,在所述根据所述快照单元中的索引信息更新所述第二类映射表中的索引信息之后,所述方法还包括:
删除所述快照单元。
3.根据权利要求1所述的固态硬盘数据表的管理方法,其特征在于,所述方法还包括:
依据第二类映射表生成对应的快照单元,其中,所述第二类映射表为处于写入状态的映射表;
当所述快照单元中的索引信息未变化,且获得第二类反馈信息时,删除所述快照单元;
所述第二类反馈信息表征所述第二类映射表的写入动作已完成。
4.根据权利要求1所述的固态硬盘数据表的管理方法,其特征在于,在所述当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值的步骤包括:
生成所述有效数据变化表;其中,所述有效数据变化表携带所述有效数据数量值;
更新所述有效数据变化表中的所述有效数据数量值;
在所述获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中之后,所述方法还包括:
删除所述有效数据变化表。
5.一种固态硬盘数据表的管理装置,其特征在于,所述装置包括:
有效数据变化表单元:用于当第一类映射表中的索引信息变化时,更新有效数据变化表中的有效数据数量值;
所述有效数据数量值表征块内有效数据的数量;所述第一类映射表中的索引信息对应所述有效数据数量值;
有效数据表单元:用于获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中;
所述第一类反馈信息表征所述有效数据表的写入动作已完成;
其中,所述装置还包括:
快照管理单元,用于依据第二类映射表生成对应的快照单元,其中,所述第二类映射表为处于写入状态的映射表;依据写请求命令更新所述快照单元中的索引信息;
所述有效数据变化表单元还用于当所述快照单元中的索引信息变化时,更新所述有效数据变化表中的有效数据数量值;
映射表单元,用于当获得第二类反馈信息时,根据所述快照单元中的索引信息更新所述第二类映射表中的索引信息;所述第二类反馈信息表征所述第二类映射表的写入动作已完成;所述快照单元用于在接收到所述第二类反馈信息前,存储对所述第二类映射表的更新的索引信息。
6.根据权利要求5所述的固态硬盘数据表的管理装置,其特征在于,所述有效数据变化表单元具体用于当第一类映射表中的索引信息变化时,生成有效数据变化表;其中,所述有效数据变化表携带所述有效数据数量值;更新有效数据变化表中的有效数据数量值;在所述获得第一类反馈信息后,将所述有效数据数量值更新至有效数据表中之后,删除所述有效数据变化表。
7.一种存储介质,其特征在于,所述存储介质存储有计算机指令,所述计算机指令在被读取并运行时执行权利要求1~4任一所述的固态硬盘数据表的管理方法。
8.一种电子设备,其特征在于,所述电子设备包括处理器、存储器,所述存储器存储有计算机指令,所述处理器读取并运行所述计算机指令,以实现权利要求1~4任一所述的固态硬盘数据表的管理方法。
CN201910927623.6A 2019-09-27 2019-09-27 固态硬盘数据表的管理方法、装置、存储介质及电子设备 Active CN110688070B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910927623.6A CN110688070B (zh) 2019-09-27 2019-09-27 固态硬盘数据表的管理方法、装置、存储介质及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910927623.6A CN110688070B (zh) 2019-09-27 2019-09-27 固态硬盘数据表的管理方法、装置、存储介质及电子设备

Publications (2)

Publication Number Publication Date
CN110688070A CN110688070A (zh) 2020-01-14
CN110688070B true CN110688070B (zh) 2022-10-11

Family

ID=69110760

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910927623.6A Active CN110688070B (zh) 2019-09-27 2019-09-27 固态硬盘数据表的管理方法、装置、存储介质及电子设备

Country Status (1)

Country Link
CN (1) CN110688070B (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116578246B (zh) * 2023-07-05 2023-09-29 合肥康芯威存储技术有限公司 一种存储设备及其控制方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105009094A (zh) * 2013-03-05 2015-10-28 西部数据技术公司 在固态驱动器中利用空闲空间计数来重建两阶加电映射的方法、设备和系统
CN108009041A (zh) * 2017-12-17 2018-05-08 华中科技大学 一种基于数据关联性感知的闪存阵列校验更新方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105009094A (zh) * 2013-03-05 2015-10-28 西部数据技术公司 在固态驱动器中利用空闲空间计数来重建两阶加电映射的方法、设备和系统
CN108009041A (zh) * 2017-12-17 2018-05-08 华中科技大学 一种基于数据关联性感知的闪存阵列校验更新方法

Also Published As

Publication number Publication date
CN110688070A (zh) 2020-01-14

Similar Documents

Publication Publication Date Title
CN108829344A (zh) 数据存储方法、装置及存储介质
US11853549B2 (en) Index storage in shingled magnetic recording (SMR) storage system with non-shingled region
CN108090168B (zh) 一种通用f2fs文件系统解析方法、终端设备及存储介质
JP5211751B2 (ja) 計算機、ダンププログラムおよびダンプ方法
CN109753443B (zh) 一种数据处理方法、装置及电子设备
EP3252592A1 (en) Method and device for storing and reading data
CN110018998B (zh) 一种文件管理方法、系统及电子设备和存储介质
CN110162525B (zh) 基于b+树的读写冲突解决方法、装置及存储介质
US11314689B2 (en) Method, apparatus, and computer program product for indexing a file
CN111159436A (zh) 一种推荐多媒体内容的方法、装置及计算设备
CN111104063A (zh) 一种数据存储方法、装置及电子设备和存储介质
CN107665098B (zh) 信息处理方法、存储设备及计算机存储介质
CN108932286B (zh) 一种数据查询方法及装置
CN111399750A (zh) 闪存数据写入方法及计算机可读取存储介质
CN112925783A (zh) 业务数据处理方法和装置、电子设备和存储介质
CN110688070B (zh) 固态硬盘数据表的管理方法、装置、存储介质及电子设备
CN114020193A (zh) 跨页勾选确定方法、装置、电子设备及存储介质
CN112764663A (zh) 云存储空间的空间管理方法、装置和系统、电子设备以及计算机可读存储介质
CN106156038B (zh) 数据存储方法和装置
CN112463055B (zh) 一种优化并使用固态硬盘l2p表的方法、系统、设备及介质
CN115203148A (zh) 修改文件的方法和装置
CN110851398B (zh) 垃圾数据的回收处理方法、装置及电子设备
CN110780820A (zh) 一种连续存储空间确定方法、装置及电子设备和存储介质
CN107135258B (zh) 消息推送的方法以及服务器
CN110658999B (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