一种冷热数据存储方法、装置以及介质制造方法及图纸

技术编号:37791672 阅读:20 留言:0更新日期:2023-06-09 09:21
本申请公开了一种冷热数据存储方法、装置以及介质,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,提高垃圾回收效率。提高垃圾回收效率。提高垃圾回收效率。

【技术实现步骤摘要】
一种冷热数据存储方法、装置以及介质


[0001]本申请涉及数据存储
,特别是涉及一种冷热数据存储方法、装置以及介质。

技术介绍

[0002]固态硬盘(Solid State Disk或Solid State Drive,简称SSD),又称固态驱动器,是用固态电子存储芯片阵列制成的硬盘。通常用NAND Flash存数据。NAND Flash闪存块在写数据之前必须整体擦除。擦除后才能处理追加写。NAND Flash闪存写入的最小粒度是Page(页)。每个闪存块由一系列的页组成,闪存块被擦除时处于空状态(Empty),当块内的页全部被写过时,就称这个闪存块满(Full)了,闪存块如果满了就不能接收新的写入了,必须整体擦除后,才能接收新的写。
[0003]SSD的FTL用L2P映射表把LBA(Logic Block Address)映射成PPA(Physical Page Address),因为闪存块本身不能覆盖写,所以发生对LBA的覆盖时,FTL就把旧数据标记成无效,把新数据追加写到闪存块里,然后修改FTL的L2P映射表。负载对LBA的访问具有随机性,会造成SSD所有闪存块内既包含有效数据,又包含无效数据。当又有新写入时,必须选择一个数据块,把里面的有效数据页读出来,然后把选中的数据块擦除,释放空间,再把有效数据和新数据写到新块中,这个过程就是SSD的垃圾回收(Garbage Collection,GC),为了写用户数据,SSD必需使用额外写入,这就产生了写放大。特别在冷数据与热数据混合存放时,热数据的频繁写入会产生写放大,也会对NAND Flash造成磨损。
[0004]由此可见,如何实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率是本领域技术人员亟待解决的问题。

技术实现思路

[0005]本申请的目的是提供一种冷热数据存储方法、装置以及介质,用于实现冷热数据的分离,降低SSD的写放大,降低Nansdflash磨损,提高垃圾回收效率。
[0006]为解决上述技术问题,本申请提供一种冷热数据存储方法,包括:
[0007]在接收到写命令时,获取当前固态硬盘的时间戳;
[0008]将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
[0009]查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
[0010]根据所述冷热属性将所述用户数据存入对应的存储位置。
[0011]优选的,还包括:
[0012]在读取到需要回收的有效数据时,获取与所述有效数据同时保存的所述时间戳和所述写命令对应的逻辑区块地址;
[0013]将所述时间戳与当前时间戳做比较;
[0014]判断计算出的时间差值是否大于阈值;
[0015]若是,则确认所述有效数据为冷数据;
[0016]若否,则确认所述有效数据为热数据。
[0017]优选的,所述逻辑区块地址冷热属性表为固态硬盘首次上电时创建的属性表,所述逻辑区块地址冷热属性表对应的存储数据均为热数据;在非首次正常上电时,恢复上次下电时保存的所述逻辑区块地址冷热属性表。
[0018]优选的,还包括:
[0019]将具有相同冷热属性的数据搬移到同一个块中。
[0020]优选的,所述根据所述冷热属性将所述用户数据存入对应的存储位置包括:
[0021]根据所述冷热属性申请相应属性的缓存管理块;
[0022]通过所述缓存管理块将所述用户数据发送至写处理单元;
[0023]通过所述写处理单元将所述用户数据写入存储器。
[0024]优选的,计算时间差值为:以写一次满盘的时间为单位粒度,计算时间差的粒度;
[0025]进一步的,所述判断计算出的时间差值是否大于阈值包括:判断计算时间差的粒度是否大于两个单位粒度,若大于,则确认所述有效数据为冷数据;
[0026]若不大于,则确认所述有效数据为热数据。
[0027]优选的,在确认所述有效数据为冷数据时,置位所述逻辑区块地址冷热属性表;
[0028]在确认所述有效数据为热数据时,清除所述逻辑区块地址冷热属性表。
[0029]为解决上述技术问题,本申请还提供一种冷热数据存储装置,包括:
[0030]获取模块,用于在接收到写命令时,获取当前固态硬盘的时间戳;
[0031]保存模块,用于将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;
[0032]查询模块,用于查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;
[0033]存储模块,用于根据所述冷热属性将所述用户数据存入对应的存储位置。
[0034]为解决上述技术问题,本申请还提供另一种冷热数据存储装置,包括存储器,用于存储计算机程序;
[0035]处理器,用于执行所述计算机程序时实现如上述的冷热数据存储方法的步骤。
[0036]为解决上述技术问题,本申请还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述的冷热数据存储方法的步骤。
[0037]本申请所提供的冷热数据存储方法,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
[0038]此外,本申请所提供的冷热数据存储装置以及介质,在接收到写命令时,获取当前固态硬盘的时间戳;将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起
保存;查询逻辑区块地址冷热属性表以获取用户数据的冷热属性;根据冷热属性将用户数据存入对应的存储位置。相对于当前技术中,存储器中的冷热数据的混合存放导致写放大的产生,采用本技术方案,在进行写数据时,将时间戳和写命令对应的逻辑区块地址以及写命令中的用户数据一起保存,通过查询逻辑区块地址冷热属性表确认写命令中的用户数据的冷热属性,根据冷热属性将用户数据存入对应的存储位置,降低了写放大。并且,将冷热数据区分存放,还能够降低存储器磨损,在进行垃圾回收时提高垃圾回收效率。
附图说明
[0039]为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种冷热数据存储方法,其特征在于,包括:在接收到写命令时,获取当前固态硬盘的时间戳;将所述时间戳和所述写命令对应的逻辑区块地址以及所述写命令中的用户数据一起保存;查询逻辑区块地址冷热属性表以获取所述用户数据的冷热属性;根据所述冷热属性将所述用户数据存入对应的存储位置。2.根据权利要求1所述的冷热数据存储方法,其特征在于,还包括:在读取到需要回收的有效数据时,获取与所述有效数据同时保存的所述时间戳和所述写命令对应的逻辑区块地址;将所述时间戳与当前时间戳做比较;判断计算出的时间差值是否大于阈值;若是,则确认所述有效数据为冷数据;若否,则确认所述有效数据为热数据。3.根据权利要求1所述的冷热数据存储方法,其特征在于,所述逻辑区块地址冷热属性表为固态硬盘首次上电时创建的属性表,所述逻辑区块地址冷热属性表对应的存储数据均为热数据;在非首次正常上电时,恢复上次下电时保存的所述逻辑区块地址冷热属性表。4.根据权利要求1所述的冷热数据存储方法,其特征在于,还包括:将具有相同冷热属性的数据搬移到同一个块中。5.根据权利要求1所述的冷热数据存储方法,其特征在于,所述根据所述冷热属性将所述用户数据存入对应的存储位置包括:根据所述冷热属性申请相应属性的缓存管理块;通过所述缓存管理块将所述用户数据发送至写处理单元;通过所述写处理单元将所述用户数据写入存储器...

【专利技术属性】
技术研发人员:李敬超赵宝林钟戟
申请(专利权)人:郑州云海信息技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1