存储数据的修复方法、装置、系统、电子设备及存储介质与流程

文档序号:36929160发布日期:2024-02-02 21:54阅读:18来源:国知局
存储数据的修复方法、装置、系统、电子设备及存储介质与流程

本发明涉及服务器,具体涉及一种存储数据的修复方法、装置、系统、电子设备及存储介质。


背景技术:

1、在全闪存储行业中,会把整个存储池的空间分为数据区和元数据区,整个数据区的空间容量非常大,可能会到几百tb(terabytes)甚至pb(petabytes)级别。将数据区的空间按一定的容量进行划分,得到多个存储空间。

2、对于存储空间的使用情况,一般基于位图来进行管理。在存储系统掉电的情况下,如果没有电池来保存这些重要的不能丢失的数据,会导致位图信息丢失。

3、位图信息丢失后,无法确定存储池中各存储空间的使用情况。对于每个存储空间中均包含很多的物理地址,每一个物理地址的数据修复时,均需要设置一次位图,造成设置位图的操作非常多,从而使得储存池的修复时间很长,导致存储数据的修复效率低。


技术实现思路

1、本发明提供一种存储数据的修复方法、装置、系统、电子设备及存储介质,用以提升存储数据的修复效率。

2、第一方面,本发明提供一种存储数据的修复方法,包括:

3、扫描待修复存储池的元数据存盘区,从所述元数据存盘区提取元数据信息,并基于提取的元数据信息,构建所述待修复存储池的元数据信息;

4、基于所述待修复存储池的元数据信息,确定所述待修复存储池中的各存储空间中是否包含有效数据,所述待修复存储池中包含多个存储空间;

5、基于所述待修复存储池中的各存储空间中是否包含有效数据,确定所述各存储空间对应的位图标记位,并基于所述各存储空间对应的位图标记位,构建所述待修复存储池的位图数据;

6、基于所述位图数据,对所述待修复存储池中的数据进行修复。

7、根据本发明提供的一种存储数据的修复方法,基于所述位图数据,对所述待修复存储池中的数据进行修复,包括:

8、确定所述待修复存储池中的数据对应的物理地址;

9、基于所述位图数据,确定所述物理地址所属的存储空间是否在所述位图数据中标记位图标记位;

10、在所述物理地址所属的存储空间在所述位图数据中已经标记位图标记位的情况下,对所述物理地址进行修复;

11、在所述位图数据中没有标记所述物理地址所属的存储空间对应的位图标记位的情况下,对所述物理地址进行修复,并在所述位图数据中标记所述物理地址所属的存储空间对应的位图标记位;

12、基于所述物理地址所属的存储空间在所述位图数据中的位图标记位,生成标记同步消息,并将所述标记同步消息发送至对端系统,使得所述对端系统接收所述标记同步消息后,同步更新所述对端系统中对应存储空间的位图数据,所述对端系统是所述待修复存储池对应系统的冗余存储系统。

13、根据本发明提供的一种存储数据的修复方法,基于所述待修复存储池中的各存储空间中是否包含有效数据,确定所述各存储空间对应的位图标记位,包括:

14、遍历所述待修复存储池中的各存储空间;

15、在所述存储空间中包含有效数据的情况下,确定所述存储空间对应的位图标记位为1;

16、在所述存储空间中不包含有效数据的情况下,确定所述存储空间对应的位图标记位为0。

17、根据本发明提供的一种存储数据的修复方法,构建所述待修复存储池的位图数据之后,还包括:

18、构建所述待修复存储池的位图数据对应的位图数组,并将所述位图数组存储至所述待修复存储池对应系统的内存空间。

19、根据本发明提供的一种存储数据的修复方法,将所述位图数组存储至所述待修复存储池对应系统的内存空间,之后,还包括:

20、基于所述位图数组,生成位图数据同步消息,并将所述位图数据同步消息发送至对端系统,使得所述对端系统接收所述位图数据同步消息后,同步更新所述对端系统中对应待修复存储池的位图数据,所述对端系统是所述待修复存储池对应系统的冗余存储系统。

21、根据本发明提供的一种存储数据的修复方法,还包括:

22、接收对端系统发送的同步消息,基于所述同步消息,更新所述待修复存储池的位图数据,所述同步消息是所述对端系统基于内存中存储的位图数组生成的。

23、根据本发明提供的一种存储数据的修复方法,扫描待修复存储池的元数据存盘区,从所述元数据存盘区提取元数据信息,包括:

24、扫描待修复存储池的元数据存盘区,从所述元数据存盘区中确定所述待修复存储池中的落盘数据的节点信息;

25、遍历所述节点信息中的元数据,并从所述节点信息中的元数据中提取元数据信息。

26、根据本发明提供的一种存储数据的修复方法,待修复存储池中的各存储空间是基于预设数据块大小,对所述待修复存储池进行划分得到的。

27、根据本发明提供的一种存储数据的修复方法,扫描待修复存储池的元数据存盘区,从所述元数据存盘区提取元数据信息之前,还包括:

28、基于所述待修复存储池中包含的多个存储空间,确定存储所述待修复存储池的位图数据的内存空间大小;

29、基于所述内存空间大小,在所述待修复存储池对应系统的内存中申请目标内存空间,所述目标内存空间用于存储所述待修复存储池的位图数据。

30、根据本发明提供的一种存储数据的修复方法,基于所述位图数据,对所述待修复存储池中的数据进行修复之后,还包括:

31、对所述待修复存储池中修复后的数据进行元数据校验,校验所述修复后的数据是否准确。

32、根据本发明提供的一种存储数据的修复方法,基于所述位图数据,对所述待修复存储池中的数据进行修复之后,还包括:

33、将所述待修复存储池中修复后的数据,同步至对端系统,所述对端系统是所述待修复存储池对应系统的冗余存储系统。

34、第二方面,本发明还提供一种存储数据的修复装置,包括:

35、扫描模块,用于扫描待修复存储池的元数据存盘区,从所述元数据存盘区提取元数据信息,并基于提取的元数据信息,构建所述待修复存储池的元数据信息;

36、数据验证模块,用于基于所述待修复存储池的元数据信息,确定所述待修复存储池中的各存储空间中是否包含有效数据,所述待修复存储池中包含多个存储空间;

37、位图构建模块,用于基于所述待修复存储池中的各存储空间中是否包含有效数据,确定所述各存储空间对应的位图标记位,并基于所述各存储空间对应的位图标记位,构建所述待修复存储池的位图数据;

38、修复模块,用于基于所述位图数据,对所述待修复存储池中的数据进行修复。

39、第三方面,本发明还提供一种存储数据的修复系统,包括:待修复存储池以及应用于上述的存储数据的修复装置。

40、第四方面,本发明还提供一种电子设备,包括存储器、处理器以及存储在存储器上并可在处理器上运行的计算机程序,处理器执行计算机程序时实现上述任一种的存储数据的修复方法。

41、第五方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种存储数据的修复方法。

42、本发明提供的存储数据的修复方法、装置、系统、电子设备及存储介质,通过扫描待修复存储池的元数据存盘区,提取元数据信息,构建待修复存储池的元数据信息。基于待修复存储池的元数据信息,确定待修复存储池中的各存储空间中是否包含有效数据,实现对待修复存储池的位图数据的确定。在确定待修复存储池的位图数据后,后续进行待修复存储池中的数据修复的过程中,只需要判断该数据所属的存储空间的位图是否被设置,确定被设置的情况下,无需进行再次设置,减少了设置位图操作次数,提升了存储池的数据修复效率。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1