System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于映射表分片的垃圾块回收方法、装置和计算机设备制造方法及图纸_技高网

基于映射表分片的垃圾块回收方法、装置和计算机设备制造方法及图纸

技术编号:41242687 阅读:2 留言:0更新日期:2024-05-09 23:54
本申请涉及一种基于映射表分片的垃圾块回收方法、装置、计算机设备和存储介质,其中该方法包括:在数据搬移过程中获取待处理页,读取所述待处理页获取逻辑页地址以及对应映射表分片的编号;判断所述映射表分片是否已加载到映射表缓存中,若未加载则加载所述映射表分片到映射表缓存中;判断所述映射表分片的表项是否处理完毕,若未处理完毕则获取所述映射表分片的下一个表项;判断所述表项指向的物理块是否为当前搬移块,若是则进行数据页搬移。本发明专利技术在数据搬移过程中,按映射分片进行块数据搬移能有效减少映射页的加载和保存,提升垃圾块回收性能。

【技术实现步骤摘要】

本专利技术涉及固态硬盘,特别是涉及一种基于映射表分片的垃圾块回收方法、装置、计算机设备和存储介质。


技术介绍

1、ssd(solid state drive,固态硬盘)作为一种新型存储介质,其采用nand颗粒作为数据存储,已经广泛应用于pc,笔记本,服务器等各个领域并逐渐取代hdd(hard diskdrive,机械硬盘)成为存贮领域的主流应用产品。

2、在现有的ssd垃圾块回收过程中,通常是根据块中存储的逻辑地址汇总页或顺序扫描物理页中的逻辑地址,查找映射,确定其中的有效页来进行数据搬移。当数据块中的逻辑地址是随机分布时,对于dram-less ssd,因能加载到ram的映射表分片较少,此种场景需要频繁加载映射表分片,以及保存在搬移过程中产生的修改过的映射表分片,如此使得垃圾回收性能较低。


技术实现思路

1、基于此,有必要针对上述技术问题,提供一种基于映射表分片的垃圾块回收方法、装置、计算机设备和存储介质。

2、一种基于映射表分片的垃圾块回收方法,所述方法包括:

3、在数据搬移过程中获取待处理页,读取所述待处理页获取逻辑页地址以及对应映射表分片的编号;

4、判断所述映射表分片是否已加载到映射表缓存中,若未加载则加载所述映射表分片到映射表缓存中;

5、判断所述映射表分片的表项是否处理完毕,若未处理完毕则获取所述映射表分片的下一个表项;

6、判断所述表项指向的物理块是否为当前搬移块,若是则进行数据页搬移。

7、在其中一个实施例中,所述方法还包括:

8、分别创建已搬移页位图和已处理映射表分片位图;

9、在批量搬移过程中对于已搬移的数据页,在所述已搬移页位图内设置对应的比特位;

10、对于已批量处理过的映射表分片,在所述已处理映射表分片位图内设置对应的比特位。

11、在其中一个实施例中,所述方法还包括:

12、根据所述已处理映射表分片位图内的标记位,判断待处理页是否已经搬移,若已经搬移则直接跳过。

13、在其中一个实施例中,所述方法还包括:

14、根据所述已搬移页位图内的标记位,判断逻辑页地址对应的映射表分片是否已批量处理过,若已经批量处理过则跳过。

15、一种基于映射表分片的垃圾块回收装置,所述基于映射表分片的垃圾块回收装置包括:

16、读取模块,所述读取模块用于在数据搬移过程中获取待处理页,读取所述待处理页获取逻辑页地址以及对应映射表分片的编号;

17、加载模块,所述加载模块用于判断所述映射表分片是否已加载到映射表缓存中,若未加载则加载所述映射表分片到映射表缓存中;

18、第一判断模块,所述第一判断模块用于判断所述映射表分片的表项是否处理完毕,若未处理完毕则获取所述映射表分片的下一个表项;

19、第二判断模块,所述第二判断模块用于判断所述表项指向的物理块是否为当前搬移块,若是则进行数据页搬移。

20、在其中一个实施例中,所述装置还包括位图创建模块,所述位图创建模块用于:

21、分别创建已搬移页位图和已处理映射表分片位图;

22、在批量搬移过程中对于已搬移的数据页,在所述已搬移页位图内设置对应的比特位;

23、对于已批量处理过的映射表分片,在所述已处理映射表分片位图内设置对应的比特位。

24、在其中一个实施例中,所述装置还用于:

25、根据所述已处理映射表分片位图内的标记位,判断待处理页是否已经搬移,若已经搬移则直接跳过。

26、在其中一个实施例中,所述装置还用于:

27、根据所述已搬移页位图内的标记位,判断逻辑页地址对应的映射表分片是否已批量处理过,若已经批量处理过则跳过。

28、一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意一项方法的步骤。

29、一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项方法的步骤。

30、上述基于映射表分片的垃圾块回收方法、装置、计算机设备和存储介质在数据搬移过程中获取待处理页,读取所述待处理页获取逻辑页地址以及对应映射表分片的编号;判断所述映射表分片是否已加载到映射表缓存中,若未加载则加载所述映射表分片到映射表缓存中;判断所述映射表分片的表项是否处理完毕,若未处理完毕则获取所述映射表分片的下一个表项;判断所述表项指向的物理块是否为当前搬移块,若是则进行数据页搬移。本专利技术在数据搬移过程中,对于读取到的逻辑地址,待加载其对应的映射表分片后,遍历整个映射表分片,查找其中映射指向当前搬移块的逻辑地址进行批量搬移,按映射分片进行块数据搬移能有效减少映射页的加载和保存,提升垃圾块回收性能。

本文档来自技高网
...

【技术保护点】

1.一种基于映射表分片的垃圾块回收方法,所述方法包括:

2.根据权利要求1所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

5.一种基于映射表分片的垃圾块回收装置,其特征在于,所述基于映射表分片的垃圾块回收装置包括:

6.根据权利要求5所述的基于映射表分片的垃圾块回收装置,其特征在于,所述装置还包括位图创建模块,所述位图创建模块用于:

7.根据权利要求6所述的基于映射表分片的垃圾块回收装置,其特征在于,所述装置还用于:

8.根据权利要求7所述的基于映射表分片的垃圾块回收装置,其特征在于,所述装置还用于:

9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至4中任一项所述方法的步骤。

10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至4中任一项所述的方法的步骤。

...

【技术特征摘要】

1.一种基于映射表分片的垃圾块回收方法,所述方法包括:

2.根据权利要求1所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

3.根据权利要求2所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

4.根据权利要求3所述的基于映射表分片的垃圾块回收方法,其特征在于,所述方法还包括:

5.一种基于映射表分片的垃圾块回收装置,其特征在于,所述基于映射表分片的垃圾块回收装置包括:

6.根据权利要求5所述的基于映射表分片的垃圾块回收装置,其特征在于,所述装置还包括位图创建...

【专利技术属性】
技术研发人员:李建洪浩邱一霄
申请(专利权)人:苏州忆联信息系统有限公司
类型:发明
国别省市:

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

1