System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 基于映射重建的数据搬移实现方法、装置和计算机设备制造方法及图纸_技高网

基于映射重建的数据搬移实现方法、装置和计算机设备制造方法及图纸

技术编号:42902662 阅读:6 留言:0更新日期:2024-09-30 15:18
本申请涉及一种基于映射重建的数据搬移实现方法、装置、计算机设备和存储介质,其中该方法包括:获取基于映射重建的数据搬移请求;在源数据块进行搬移过程仅读取映射分片,获取源数据块中有效数据搬移至目的块但并不更新映射;当所述源数据块搬移结束后,读取所述目的块中的元数据重建映射;根据重建后的映射逻辑地址加载映射分片并与映射分片中对应的映射进行比较,若重建后的映射较新则更新映射分片。本发明专利技术在源数据块搬移过程中不做映射表的更新,待搬移结束后根据搬移目的块中的元数据信息重建映射,完成源数据块的回收,如此可以大幅减少因映射表分片读写与用户数据搬移的交织导致的读写阻塞,进而有效地提升了DRAM‑less SSD的垃圾回收性能。

【技术实现步骤摘要】

本专利技术涉及固态硬盘,特别是涉及一种基于映射重建的数据搬移实现方法、装置、计算机设备和存储介质。


技术介绍

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

2、在ssd的垃圾块回收过程中,通常是根据块中存储的逻辑地址汇总页或顺序扫描物理页中的逻辑地址,查找映射,确定其中的有效页来进行数据搬移并更新映射。dram-less ssd因只能加载部分映射表缓存到ram中,在nand数据随机分布场景,在搬移用户数据的同时,需要频繁加载、存储映射表分片,用户数据的读写和映射表的读写交织,会导致读写阻塞,进而会极大地影响了dram-less ssd的垃圾回收性能。


技术实现思路

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、上述基于映射重建的数据搬移实现方法、装置、计算机设备和存储介质,获取基于映射重建的数据搬移请求;在源数据块进行搬移过程仅读取映射分片,获取源数据块中有效数据搬移至目的块但并不更新映射;当所述源数据块搬移结束后,读取所述目的块中的元数据重建映射;根据重建后的映射逻辑地址加载映射分片并与映射分片中对应的映射进行比较,若重建后的映射较新则更新映射分片。本专利技术在源数据块搬移过程中不做映射表的更新,待搬移结束后根据搬移目的块中的元数据信息重建映射,完成源数据块的回收,如此可以大幅减少因映射表分片读写与用户数据搬移的交织导致的读写阻塞,进而有效地提升了dram-less ssd的垃圾回收性能。

本文档来自技高网...

【技术保护点】

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