CN116225334A - 一种冷热数据存储方法、装置以及介质 - Google Patents
一种冷热数据存储方法、装置以及介质 Download PDFInfo
- Publication number
- CN116225334A CN116225334A CN202310232061.XA CN202310232061A CN116225334A CN 116225334 A CN116225334 A CN 116225334A CN 202310232061 A CN202310232061 A CN 202310232061A CN 116225334 A CN116225334 A CN 116225334A
- Authority
- CN
- China
- Prior art keywords
- cold
- data
- hot
- write command
- logical block
- 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.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0628—Interfaces specially adapted for storage systems making use of a particular technique
- G06F3/0646—Horizontal data movement in storage systems, i.e. moving data in between storage devices or systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0602—Interfaces specially adapted for storage systems specifically adapted to achieve a particular effect
- G06F3/0614—Improving the reliability of storage systems
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/06—Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
- G06F3/0601—Interfaces specially adapted for storage systems
- G06F3/0668—Interfaces specially adapted for storage systems adopting a particular infrastructure
- G06F3/0671—In-line storage system
- G06F3/0673—Single storage device
- G06F3/0679—Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
Abstract
本申请公开了一种冷热数据存储方法、装置以及介质,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,提高垃圾回收效率。
Description
技术领域
本申请涉及数据存储技术领域,特别是涉及一种冷热数据存储方法、装置以及介质。
背景技术
固态硬盘(Solid State Disk或Solid State Drive,简称SSD),又称固态驱动器,是用固态电子存储芯片阵列制成的硬盘。通常用NAND Flash存数据。NAND Flash闪存块在写数据之前必须整体擦除。擦除后才能处理追加写。NAND Flash闪存写入的最小粒度是Page(页)。每个闪存块由一系列的页组成,闪存块被擦除时处于空状态(Empty),当块内的页全部被写过时,就称这个闪存块满(Full)了,闪存块如果满了就不能接收新的写入了,必须整体擦除后,才能接收新的写。
SSD的FTL用L2P映射表把LBA(Logic Block Address)映射成PPA(Physical PageAddress),因为闪存块本身不能覆盖写,所以发生对LBA的覆盖时,FTL就把旧数据标记成无效,把新数据追加写到闪存块里,然后修改FTL的L2P映射表。负载对LBA的访问具有随机性,会造成SSD所有闪存块内既包含有效数据,又包含无效数据。当又有新写入时,必须选择一个数据块,把里面的有效数据页读出来,然后把选中的数据块擦除,释放空间,再把有效数据和新数据写到新块中,这个过程就是SSD的垃圾回收(Garbage Collection,GC),为了写用户数据,SSD必需使用额外写入,这就产生了写放大。特别在冷数据与热数据混合存放时,热数据的频繁写入会产生写放大,也会对NAND Flash造成磨损。
由此可见,如何实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率是本领域技术人员亟待解决的问题。
发明内容
本申请的目的是提供一种冷热数据存储方法、装置以及介质,用于实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率。
为解决上述技术问题,本申请提供一种冷热数据存储方法,包括:
在接收到写命令时,获取当前固态硬盘的时间戳;
将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
根据所述冷热属性将所述用户数据存入对应的存储位置。
优选的,还包括:
在读取到需要回收的有效数据时,获取与所述有效数据同时保存的所述时间戳和所述写命令对应的逻辑区块地址;
将所述时间戳与当前时间戳做比较;
判断计算出的时间差值是否大于阈值;
若是,则确认所述有效数据为冷数据;
若否,则确认所述有效数据为热数据。
优选的,所述逻辑区块地址冷热属性表为固态硬盘首次上电时创建的属性表,所述逻辑区块地址冷热属性表对应的存储数据均为热数据;在非首次正常上电时,恢复上次下电时保存的所述逻辑区块地址冷热属性表。
优选的,还包括:
将具有相同冷热属性的数据搬移到同一个块中。
优选的,所述根据所述冷热属性将所述用户数据存入对应的存储位置包括:
根据所述冷热属性申请相应属性的缓存管理块;
通过所述缓存管理块将所述用户数据发送至写处理单元;
通过所述写处理单元将所述用户数据写入存储器。
优选的,计算时间差值为:以写一次满盘的时间为单位粒度,计算时间差的粒度;
进一步的,所述判断计算出的时间差值是否大于阈值包括:判断计算时间差的粒度是否大于两个单位粒度,若大于,则确认所述有效数据为冷数据;
若不大于,则确认所述有效数据为热数据。
优选的,在确认所述有效数据为冷数据时,置位所述逻辑区块地址冷热属性表;
在确认所述有效数据为热数据时,清除所述逻辑区块地址冷热属性表。
为解决上述技术问题,本申请还提供一种冷热数据存储装置,包括:
获取模块,用于在接收到写命令时,获取当前固态硬盘的时间戳;
保存模块,用于将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
查询模块,用于查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
存储模块,用于根据所述冷热属性将所述用户数据存入对应的存储位置。
为解决上述技术问题,本申请还提供另一种冷热数据存储装置,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如上述的冷热数据存储方法的步骤。
为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的冷热数据存储方法的步骤。
本申请所提供的冷热数据存储方法,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
此外,本申请所提供的冷热数据存储装置以及介质,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
附图说明
为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种冷热数据存储方法的流程图;
图2为本申请实施例提供的一种冷热数据存储装置的结构图;
图3为本申请实施例提供的另一种冷热数据存储装置的结构图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本申请保护范围。
固态硬盘(Solid State Disk或Solid State Drive,简称SSD),又称固态驱动器,是用固态电子存储芯片阵列制成的硬盘。通常用NAND Flash存数据。NAND Flash闪存块在写数据之前必须整体擦除。擦除后才能处理追加写。NAND Flash闪存写入的最小粒度是Page(页)。每个闪存块由一系列的页组成,闪存块被擦除时处于空状态(Empty),当块内的页全部被写过时,就称这个闪存块满(Full)了,闪存块如果满了就不能接收新的写入了,必须整体擦除后,才能接收新的写。
SSD的FTL用L2P映射表把LBA(Logic Block Address)映射成PPA(Physical PageAddress),因为闪存块本身不能覆盖写,所以发生对LBA的覆盖时,FTL就把旧数据标记成无效,把新数据追加写到闪存块里,然后修改FTL的L2P映射表。负载对LBA的访问具有随机性,会造成SSD所有闪存块内既包含有效数据,又包含无效数据。当又有新写入时,必须选择一个数据块,把里面的有效数据页读出来,然后把选中的数据块擦除,释放空间,再把有效数据和新数据写到新块中,这个过程就是SSD的垃圾回收(Garbage Collection,GC),为了写用户数据,SSD必需使用额外写入,这就产生了写放大。特别在冷数据与热数据混合存放时,热数据的频繁写入会产生写放大,也会对NAND Flash造成磨损。
由此可见,如何实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率是本领域技术人员亟待解决的问题。
本申请的核心是提供一种冷热数据存储方法、装置以及介质,用于实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率。
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。
图1为本申请实施例提供的一种冷热数据存储方法的流程图,如图1所示,该方法包括:
S10:在接收到写命令时,获取当前固态硬盘的时间戳;
S11:将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;
S12:查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;
S13:根据冷热属性将用户数据存入对应的存储位置。
所谓冷数据,简单来说就是在一段时间内访问的比较少,接下来的一段时间访问的概率也不是很大。相反的是,热数据,就是在一段时间内访问的较多的数据,它们在接下来的时间内访问的概率也会非常大。冷热数据的判断大都基于两个标准,访问的频繁度和访问的时效性。访问的频繁度即在一段时间内对一个数据访问的越多,常理上我们越把它当成热数据。访问的时效性即访问的数据越接近当前时间点,我们也可以从某种程度上把其当成热数据。因为大多数应用场景,都具有时间和空间的局部性(尤其是对于计算机领域来说),当前访问的数据,接下来访问的概率相对要较大些。
在本申请中,逻辑区块地址冷热属性表为固态硬盘首次上电时创建的属性表,逻辑区块地址冷热属性表对应的存储数据均为热数据;在非首次正常上电时,恢复上次下电时保存的逻辑区块地址冷热属性表。固态硬盘首次上电时,会创建LBA冷热属性表,一个LBA使用1个bit表示,1b代表冷数据,0b代表热数据,首次上电时,该表项内容赋初值为0,即代表所有LBA都为热数据,下电时保存该表,非首次的正常上电时,恢复上次下电保存的LBA冷热属性表。
逻辑区块地址是描述计算机存储设备上数据所在区块的通用机制,一般用在像硬盘这样的辅助记忆设备。LBA可以意指某个数据区块的地址或是某个地址所指向的数据区块。现今计算机上所谓一个逻辑区块通常是512或1024位组。ISO-9660格式的标准CD则以2048位组为一个逻辑区块大小。
当使用机械硬盘时,文件系统可以直接将新数据写入到旧数据存储的位置,即可以直接覆盖旧数据。在固态硬盘中,境况有所不同。如果想让存储无用数据的块写入新数据,就需要先把整个块删除,才可以写入新的数据,也就是说固态硬盘并不具备直接覆盖旧数据的能力。对于固态硬盘来说,垃圾回收是指把现存数据重新转移到其他闪存位置,并且把一些无用的数据彻底删除的过程。数据写入的方式,即以页面为单位写入,但是要想删除数据却需要以块为单位。因此要删除无用的数据,固态硬盘首先需要把一个块内包含有用的数据先复制粘贴到全新的块中的页面内,这样原来块中包含的无用数据才能够以块为单位删除。删除后,才能够写入新的数据,而在擦除之前是无法写入新数据的。
当写入新数据时,如果SSD控制器找不到可以写入的page时,会执行GC过程,然后GC机制会将一些block中的有效数据合并写入其他的block中,然后将这些block的无效数据擦出,再将新数据写入到这些block中,而在整个过程中除了要写入用户的数据之外,实际上SSD还写入了一些其他block合并过来的数据,所以这就叫写入放大。
当在操作系统(例如Windows)中删除文件时,操作系统只是在其内部文件表中做标记表示该文件已删除。由于NAND闪存设备不能覆盖现有数据,所以在固态硬盘SSD上,当前无效的数据仍然保留在硬盘上。
这样的话就会产生大量的失效数据,也称为数据垃圾。为了提升SSD的利用效率,这时候就该“垃圾回收”(Garbage Collection,GC)。
GC过程就是固态硬盘控制器会先复制所有有效数据(仍在使用中的数据)并将其写入不同数据区的空白页、擦除当前数据区中的所有数据单元,然后开始将新数据写入刚刚擦除过的数据区。
在本实施例中,当垃圾回收机制被触发时,在读取需要回收的有效数据时,同时获取该笔数据的LBA与时间戳,与当前SSD时间戳比较,并以写一次满盘的时间为单位粒度,计算时间差的粒度,当时间差大于两个单位粒度时,则认为该笔数据为冷数据,同时置位LBA冷热属性表,反之则清除LBA冷热属性表。
本申请实施例提供的冷热数据存储方法,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
在具体实施中,当垃圾回收机制被触发时,本申请实施例提供的冷热数据存储方法还包括:在读取到需要回收的有效数据时,获取与有效数据同时保存的时间戳和写命令对应的逻辑区块地址;将时间戳与当前时间戳做比较;判断计算出的时间差值是否大于阈值;若是,则确认有效数据为冷数据,并置位逻辑区块地址冷热属性表;若否,则确认有效数据为热数据,则清除逻辑区块地址冷热属性表。同时,在确认有效数据为冷数据时,置位逻辑区块地址冷热属性表;在确认有效数据为热数据时,清除逻辑区块地址冷热属性表。具体的,计算时间差值为:以写一次满盘的时间为单位粒度,计算时间差的粒度;进一步的,判断计算出的时间差值是否大于阈值包括:判断计算时间差的粒度是否大于两个单位粒度,若大于,则确认有效数据为冷数据;若不大于,则确认有效数据为热数据。
在上述实施例的基础上,在本实施例中,还包括:将具有相同冷热属性的数据搬移到同一个块中。根据冷热属性将用户数据存入对应的存储位置包括:根据冷热属性申请相应属性的缓存管理块;通过缓存管理块将用户数据发送至写处理单元;通过写处理单元将用户数据写入存储器。在搬移数据时,具有相同冷热属性的数据写入到同一个Block中,同一个Block中只保存具有同属性的数据,以确保冷热数据分离。在存放数据时,查询LBA冷热属性表,获取其冷热属性,并申请相应属性的缓存管理块(Cache Control Block,CCB),同时要求一个CCB内的数据只能为同一种冷热属性,后发送给写处理模块(Write ManagerModule,WM),由WM写入Nandflash。
在上述实施例中,对于冷热数据存储方法进行了详细描述,本申请还提供冷热数据存储装置对应的实施例。需要说明的是,本申请从两个角度对装置部分的实施例进行描述,一种是基于功能模块的角度,另一种是基于硬件的角度。
图2为本申请实施例提供的一种冷热数据存储装置的结构图,如图2所示,该装置包括:
获取模块10,用于在接收到写命令时,获取当前固态硬盘的时间戳;
保存模块11,用于将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;
查询模块12,用于查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;
存储模块13,用于根据冷热属性将用户数据存入对应的存储位置。
由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
本申请实施例提供的冷热数据存储装置,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
图3为本申请实施例提供的另一种冷热数据存储装置的结构图,如图3所示,该装置包括:存储器20,用于存储计算机程序;
处理器21,用于执行计算机程序时实现如上述实施例冷热数据存储方法的步骤。
本实施例提供的冷热数据存储装置可以包括但不限于智能手机、平板电脑、笔记本电脑或台式电脑等。
其中,处理器21可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器21可以采用数字信号处理器(Digital Signal Processor,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(Programmable LogicArray,PLA)中的至少一种硬件形式来实现。处理器21也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称中央处理器(CentralProcessing Unit,CPU);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器21可以集成有图像处理器(Graphics Processing Unit,GPU),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器21还可以包括人工智能(Artificial Intelligence,AI)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器20可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是非暂态的。存储器20还可以包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。本实施例中,存储器20至少用于存储以下计算机程序201,其中,该计算机程序被处理器21加载并执行之后,能够实现前述任一实施例公开的冷热数据存储方法的相关步骤。另外,存储器20所存储的资源还可以包括操作系统202和数据203等,存储方式可以是短暂存储或者永久存储。其中,操作系统202可以包括Windows、Unix、Linux等。数据203可以包括但不限于用户数据等。
在一些实施例中,冷热数据存储装置还可以包括有显示屏22、输入输出接口23、通信接口24、电源25以及通信总线26。
本领域技术人员可以理解,图3中示出的结构并不构成对冷热数据存储装置的限定,可以包括比图示更多或更少的组件。
本申请实施例提供的冷热数据存储装置,包括存储器和处理器,处理器在执行存储器存储的程序时,能够实现如下方法:在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。
本申请实施例提供的冷热数据存储装置,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
最后,本申请还提供一种计算机可读存储介质对应的实施例。计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述方法实施例中记载的步骤。
可以理解的是,如果上述实施例中的方法以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本申请实施例提供的计算机可读存储介质,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
以上对本申请所提供的冷热数据存储方法、装置以及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (10)
1.一种冷热数据存储方法,其特征在于,包括:
在接收到写命令时,获取当前固态硬盘的时间戳;
将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
根据所述冷热属性将所述用户数据存入对应的存储位置。
2.根据权利要求1所述的冷热数据存储方法,其特征在于,还包括:
在读取到需要回收的有效数据时,获取与所述有效数据同时保存的所述时间戳和所述写命令对应的逻辑区块地址;
将所述时间戳与当前时间戳做比较;
判断计算出的时间差值是否大于阈值;
若是,则确认所述有效数据为冷数据;
若否,则确认所述有效数据为热数据。
3.根据权利要求1所述的冷热数据存储方法,其特征在于,所述逻辑区块地址冷热属性表为固态硬盘首次上电时创建的属性表,所述逻辑区块地址冷热属性表对应的存储数据均为热数据;在非首次正常上电时,恢复上次下电时保存的所述逻辑区块地址冷热属性表。
4.根据权利要求1所述的冷热数据存储方法,其特征在于,还包括:
将具有相同冷热属性的数据搬移到同一个块中。
5.根据权利要求1所述的冷热数据存储方法,其特征在于,所述根据所述冷热属性将所述用户数据存入对应的存储位置包括:
根据所述冷热属性申请相应属性的缓存管理块;
通过所述缓存管理块将所述用户数据发送至写处理单元;
通过所述写处理单元将所述用户数据写入存储器。
6.根据权利要求2所述的冷热数据存储方法,其特征在于,计算时间差值为:以写一次满盘的时间为单位粒度,计算时间差的粒度;
进一步的,所述判断计算出的时间差值是否大于阈值包括:判断计算时间差的粒度是否大于两个单位粒度,若大于,则确认所述有效数据为冷数据;
若不大于,则确认所述有效数据为热数据。
7.根据权利要求2所述的冷热数据存储方法,其特征在于,在确认所述有效数据为冷数据时,置位所述逻辑区块地址冷热属性表;
在确认所述有效数据为热数据时,清除所述逻辑区块地址冷热属性表。
8.一种冷热数据存储装置,其特征在于,包括:
获取模块,用于在接收到写命令时,获取当前固态硬盘的时间戳;
保存模块,用于将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
查询模块,用于查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
存储模块,用于根据所述冷热属性将所述用户数据存入对应的存储位置。
9.一种冷热数据存储装置,其特征在于,包括存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任意一项所述的冷热数据存储方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任意一项所述的冷热数据存储方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310232061.XA CN116225334A (zh) | 2023-03-10 | 2023-03-10 | 一种冷热数据存储方法、装置以及介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310232061.XA CN116225334A (zh) | 2023-03-10 | 2023-03-10 | 一种冷热数据存储方法、装置以及介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116225334A true CN116225334A (zh) | 2023-06-06 |
Family
ID=86573013
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310232061.XA Pending CN116225334A (zh) | 2023-03-10 | 2023-03-10 | 一种冷热数据存储方法、装置以及介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116225334A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116627355A (zh) * | 2023-07-21 | 2023-08-22 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置及电子设备 |
CN116820351A (zh) * | 2023-07-21 | 2023-09-29 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置、存储介质及电子设备 |
-
2023
- 2023-03-10 CN CN202310232061.XA patent/CN116225334A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116627355A (zh) * | 2023-07-21 | 2023-08-22 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置及电子设备 |
CN116820351A (zh) * | 2023-07-21 | 2023-09-29 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置、存储介质及电子设备 |
CN116627355B (zh) * | 2023-07-21 | 2023-10-13 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置及电子设备 |
CN116820351B (zh) * | 2023-07-21 | 2024-04-09 | 北京得瑞领新科技有限公司 | 冷热数据标定方法、装置、存储介质及电子设备 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10007468B2 (en) | Method and apparatus for erasing data in data section in flash memory | |
US8918581B2 (en) | Enhancing the lifetime and performance of flash-based storage | |
US9229863B2 (en) | Semiconductor storage device | |
US20190102262A1 (en) | Automated continuous checkpointing | |
US20180121351A1 (en) | Storage system, storage management apparatus, storage device, hybrid storage apparatus, and storage management method | |
CN116225334A (zh) | 一种冷热数据存储方法、装置以及介质 | |
US20170139825A1 (en) | Method of improving garbage collection efficiency of flash-oriented file systems using a journaling approach | |
US20190369892A1 (en) | Method and Apparatus for Facilitating a Trim Process Using Auxiliary Tables | |
US8850148B2 (en) | Data copy management for faster reads | |
CN110362499B (zh) | 电子机器及其控制方法、计算机系统及其控制方法以及主机的控制方法 | |
KR101826047B1 (ko) | 저장 장치 및 그 구동 방법 | |
CN109697170B (zh) | 存取闪存模块的方法及相关的闪存控制器与电子装置 | |
KR20200116704A (ko) | 메모리 시스템 및 그것의 동작방법 | |
CN110568998A (zh) | 基于固态硬盘的Trim命令实现方法、装置和计算机设备 | |
CN111033478A (zh) | 使用磁盘高速缓存的动态trim处理 | |
EP3385846B1 (en) | Method and device for processing access request, and computer system | |
CN116257460B (zh) | 基于固态硬盘的Trim命令处理方法及固态硬盘 | |
US20140280396A1 (en) | Operating method for user system including host and memory system | |
US20140281581A1 (en) | Storage Device | |
CN110058938B (zh) | 一种内存处理方法、装置、电子设备和可读介质 | |
WO2022110172A1 (zh) | 数据处理方法及相关设备 | |
US20200319999A1 (en) | Storage device, control method of storage device, and storage medium | |
CN110389706B (zh) | 一种指纹回收方法以及存储系统 | |
KR100960627B1 (ko) | 에프램을 캐시 메모리로 사용하는 플래시 메모리 장치 | |
US11941246B2 (en) | Memory system, data processing system including the same, and operating method thereof |
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 |