一种磁盘格式化方法、装置、设备和计算机可读存储介质与流程

文档序号:33936847发布日期:2023-04-22 15:54阅读:41来源:国知局
一种磁盘格式化方法、装置、设备和计算机可读存储介质与流程

本技术涉及数据存储,特别是涉及一种磁盘格式化方法、装置、设备和计算机可读存储介质。


背景技术:

1、随着互联网技术的发展,网络上的数据量成井喷式增长。数据量的增长会给企业服务器带来巨大的压力,如何对如此海量的数据进行存储是当前需要考虑的重要问题。

2、存储服务器是企业用来管理存储服务数据的重要载体,独立磁盘组成的具有冗余性的阵列(redundant array of independent disks,raid)在存储服务器中扮演至关重要的角色。raid通常以条带的方式将数据分散到各个硬盘上以达到快速读写的能力,一些类别的raid阵列也能够提供数据的冗余纠错能力,提升数据存储的可靠性。

3、对raid阵列上的机械硬盘(hard disk drive,hdd)进行格式化是经常使用到的功能,磁盘格式化主要是为了擦除磁盘中的原有数据,防止磁盘划分到新的业务后,原有的残留数据被恶意获取访问到,从而威胁到数据存储的安全。

4、传统方式会将整块磁盘的所有扇区进行擦除操作,对所有扇区进行写0或写1操作,安全格式化更是需要进行多次写0/1和写随机数,这通常需要耗费几十到上百个小时,严重影响存储空间在时间上的使用率。

5、可见,如何提升磁盘格式化的处理效率,是本领域技术人员需要解决的问题。


技术实现思路

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、可选地,所述调整所述数据写入位置所匹配的父节点位图和目标子节点位图的标识包括:

31、每完成一个扇区的格式化处理,则将所述目标子节点位图中与所述扇区匹配的位的写入标识调整为非写入标识;

32、每完成一个目标子节点的标识调整,则将所述父节点位图中与所述目标子节点位图匹配的位的写入标识调整为非写入标识。

33、可选地,还包括:

34、在不存在所述磁盘对应的格式化元数据的情况下,对所述磁盘分配一个父节点位图;

35、对所述磁盘所有扇区进行格式化处理,并对所述磁盘对应的父节点位图的每一位均设置非写入标识。

36、可选地,还包括:

37、在系统重启的情况下,从磁盘中读取格式化元数据,并将所述格式化元数据写入内存。

38、可选地,所述从磁盘中读取格式化元数据,并将所述格式化元数据写入内存包括:

39、按照各位图存储的先后顺序以及各位图所占用的存储空间,依次从磁盘中读取所述格式化元数据中包含的各位图对应的元数据;其中,所述位图包括父节点位图和各层级子节点位图;

40、将各位图对应的元数据按照层级关系写入内存。

41、可选地,在所述子节点位图只有一个层级的情况下,所述按照各位图存储的先后顺序以及各位图所占用的存储空间,依次从磁盘中读取所述格式化元数据中包含的各位图对应的元数据包括:

42、按照先后顺序从所述格式化元数据中读取第一容量的第一格式化元数据;其中,所述第一容量为所述父节点位图所占用的容量;

43、将所述第一格式化元数据转换为父节点位图;

44、在遍历到所述父节点位图中具有写入标识的第一位图索引号的情况下,从所述格式化元数据中读取与所述第一格式化元数据后向相邻的第二容量的第二格式化元数据;其中,所述第二容量为与所述父节点位图相邻层级的一个子节点位图所占用的容量;

45、将所述第二格式化元数据作为所述第一位图索引号对应的子节点位图。

46、可选地,还包括:

47、在系统执行断电操作的情况下,在断电前将内存中记录的父节点位图和子节点位图下刷到对应的磁盘。

48、可选地,还包括:

49、在接收到携带有目标逻辑区块地址和数据长度的写入指令的情况下,依据所述父节点位图每位所表征的内存空间、所述目标逻辑区块地址和所述数据长度,确定出匹配的目标位图索引号;

50、在所述父节点位图中所述目标位图索引号所在的位设置有写入标识的情况下,根据所述数据长度以及所述目标位图索引号,依次对匹配的子节点位图的相应位设置写入标识。

51、可选地,所述根据所述数据长度以及所述目标位图索引号,依次对匹配的子节点位图的相应位设置写入标识包括:

52、依据所述父节点位图中每一位与子节点位图的对应关系以及所述目标位图索引号,确定出匹配的子节点位图;

53、依据所述数据长度,确定出所述匹配的子节点位图中与写入数据相对应的位,对与写入数据相对应的位设置写入标识。

54、可选地,还包括:

55、在所述父节点位图中所述目标位图索引号所在的位未设置写入标识的情况下,对所述目标位图索引号所在的位设置写入标识;根据所述数据长度以及所述目标位图索引号,构建匹配的子节点位图,并向所述匹配的子节点位图的相应位设置写入标识。

56、本技术实施例还提供了一种磁盘格式化装置,所述装置包括读取单元、查询单元、确定单元、格式化单元和调整单元;

57、所述读取单元,用于在获取到磁盘的格式化指令的情况下,读取所述磁盘所对应的格式化元数据;其中,所述格式化元数据包括一个父节点位图和至少一个层级的子节点位图;所述子节点位图中最底层子节点位图记录有表征数据写入位置的写入标识;

58、所述查询单元,用于查询所述父节点位图,以确定出具有写入标识的位图索引号;

59、所述确定单元,用于根据所述位图索引号所匹配的目标子节点位图,确定出数据写入位置;

60、所述格式化单元,用于对所述数据写入位置对应的扇区进行格式化处理;

61、所述调整单元,用于调整所述数据写入位置所匹配的父节点位图和目标子节点位图的标识,直至所述父节点位图不存在写入标识,则结束格式化操作。

62、可选地,所述查询单元用于依次遍历所述父节点位图,在检测到具有写入标识的位图索引号的情况下,执行所述根据所述位图索引号所匹配的目标子节点位图,确定出数据写入位置的步骤。

63、可选地,所述查询单元用于统计所述父节点位图中所有具有写入标识的位图索引号。

64、可选地,在所述子节点位图有多个层级的情况下,所述确定单元包括子节点位图确定子单元、遍历子单元、统计子单元和转换子单元;

65、所述子节点位图确定子单元,用于依据所述父节点位图中每一位与第一层级中各子节点位图的对应关系,确定出所述位图索引号对应的第一层级目标子节点位图;

66、所述遍历子单元,用于依次遍历所述第一层级目标子节点位图,在检测到具有写入标识的第一层级位图索引号的情况下,依据所述第一层级目标子节点位图中每一位与第二层级中各子节点位图的对应关系,确定出所述第一层级位图索引号对应的第二层级目标子节点位图;

67、所述统计子单元,用于在所述第二层级目标子节点位图为最底层子节点位图的情况下,统计所述第二层级目标子节点位图中具有写入标识的第二层级位图索引号;

68、所述转换子单元,用于将所述第二层级位图索引号转换为逻辑区块地址;

69、相应的,所述格式化单元用于对所述逻辑区块地址对应的扇区进行格式化处理。

70、可选地,还包括作为单元;

71、所述作为单元,用于在所述第二层级目标子节点位图不为最底层子节点位图的情况下,将所述第二层级目标子节点位图作为第一层级目标子节点位图,返回所述依次遍历所述第一层级目标子节点位图的步骤。

72、可选地,所述调整单元包括底层位图调整子单元和上层位图调整子单元;

73、所述底层位图调整子单元,用于每完成一个扇区的格式化处理,则将所述最底层子节点位图中与所述扇区匹配的位的写入标识调整为非写入标识;

74、所述上层位图调整子单元,用于每完成一个当前层级子节点位图的标识调整,则将上层级节点位图中与当前层级子节点位图匹配的位的写入标识调整为非写入标识;其中,所述上层级节点位图为所述当前层级子节点位图所属的上一层级子节点位图或父节点位图。

75、可选地,所述上层位图调整子单元用于每完成一个最底层子节点位图的标识调整,则将上一层级子节点位图中与所述最底层子节点位图匹配的位的写入标识调整为非写入标识;

76、每完成一个上一层级子节点位图的标识调整,则将与所述上一层级子节点位图相邻的前一层级子节点位图中与所述上一层级子节点位图匹配的位的写入标识调整为非写入标识,直至完成所述父节点位图中所有写入标识的调整。

77、可选地,在所述子节点位图只有一个层级的情况下,所述确定单元包括子节点位图确定子单元、遍历子单元和转换子单元;

78、所述子节点位图确定子单元,用于依据所述父节点位图中每一位与各子节点位图的对应关系,确定出所述位图索引号对应的目标子节点位图;

79、所述遍历子单元,用于遍历所述目标子节点位图,以筛选出所述目标子节点位图中具有写入标识的子节点位图索引号;

80、所述转换子单元,用于将所述子节点位图索引号转换为逻辑区块地址。

81、可选地,所述调整单元包括子节点调整子单元和父节点调整子单元;

82、所述子节点调整子单元,用于每完成一个扇区的格式化处理,则将所述目标子节点位图中与所述扇区匹配的位的写入标识调整为非写入标识;

83、所述父节点调整子单元,用于每完成一个目标子节点的标识调整,则将所述父节点位图中与所述目标子节点位图匹配的位的写入标识调整为非写入标识。

84、可选地,还包括分配单元和设置单元;

85、所述分配单元,用于在不存在所述磁盘对应的格式化元数据的情况下,对所述磁盘分配一个父节点位图;

86、所述格式化单元,用于对所述磁盘所有扇区进行格式化处理;

87、所述设置单元,用于对所述磁盘对应的父节点位图的每一位均设置非写入标识。

88、可选地,还包括写入单元;

89、所述写入单元,用于在系统重启的情况下,从磁盘中读取格式化元数据,并将所述格式化元数据写入内存。

90、可选地,所述写入单元包括读取子单元和存储子单元;

91、所述读取子单元,用于按照各位图存储的先后顺序以及各位图所占用的存储空间,依次从磁盘中读取所述格式化元数据中包含的各位图对应的元数据;其中,所述位图包括父节点位图和各层级子节点位图;

92、所述存储子单元,用于将各位图对应的元数据按照层级关系写入内存。

93、可选地,在所述子节点位图只有一个层级的情况下,所述读取子单元用于按照先后顺序从所述格式化元数据中读取第一容量的第一格式化元数据;其中,所述第一容量为所述父节点位图所占用的容量;

94、将所述第一格式化元数据转换为父节点位图;

95、在遍历到所述父节点位图中具有写入标识的第一位图索引号的情况下,从所述格式化元数据中读取与所述第一格式化元数据后向相邻的第二容量的第二格式化元数据;其中,所述第二容量为与所述父节点位图相邻层级的一个子节点位图所占用的容量;

96、将所述第二格式化元数据作为所述第一位图索引号对应的子节点位图。

97、可选地,还包括下刷单元;

98、所述下刷单元,用于在系统执行断电操作的情况下,在断电前将内存中记录的父节点位图和子节点位图下刷到对应的磁盘。

99、可选地,还包括索引号确定单元和标识设置单元;

100、所述索引号确定单元,用于在接收到携带有目标逻辑区块地址和数据长度的写入指令的情况下,依据所述父节点位图每位所表征的内存空间、所述目标逻辑区块地址和所述数据长度,确定出匹配的目标位图索引号;

101、所述标识设置单元,用于在所述父节点位图中所述目标位图索引号所在的位设置有写入标识的情况下,根据所述数据长度以及所述目标位图索引号,依次对匹配的子节点位图的相应位设置写入标识。

102、可选地,所述标识设置单元用于依据所述父节点位图中每一位与子节点位图的对应关系以及所述目标位图索引号,确定出匹配的子节点位图;

103、依据所述数据长度,确定出所述匹配的子节点位图中与写入数据相对应的位,对与写入数据相对应的位设置写入标识。

104、可选地,还包括构建单元;

105、所述标识设置单元。用于在所述父节点位图中所述目标位图索引号所在的位未设置写入标识的情况下,对所述目标位图索引号所在的位设置写入标识;

106、所述构建单元,用于根据所述数据长度以及所述目标位图索引号,构建匹配的子节点位图;

107、所述标识设置单元还用于向所述匹配的子节点位图的相应位设置写入标识。

108、本技术实施例还提供了一种电子设备,包括:

109、存储器,用于存储计算机程序;

110、处理器,用于执行所述计算机程序以实现如上述磁盘格式化方法的步骤。

111、本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述磁盘格式化方法的步骤。

112、由上述技术方案可以看出,在获取到磁盘的格式化指令的情况下,读取磁盘所对应的格式化元数据;每个磁盘有其对应的格式化元数据,该格式化元数据中记录了数据的具体写入位置。为了提升数据写入位置的查询效率,格式化元数据可以包括一个父节点位图和至少一个层级的子节点位图;子节点位图中最底层子节点位图记录有表征数据写入位置的写入标识。查询父节点位图,以确定出具有写入标识的位图索引号,每个位图索引号有其表征的存储空间,具有写入标识说明该位图索引号对应的存储空间写有数据。根据位图索引号所匹配的目标子节点位图,可以确定出具体的数据写入位置。对数据写入位置对应的扇区进行格式化处理,并调整数据写入位置所匹配的父节点位图和目标子节点位图的标识,直至父节点位图不存在写入标识,说明已完成磁盘中所有写入数据的扇区的格式化操作,此时可以结束格式化操作。在该技术方案中,采用位图对扇区的写入情况进行记录,在磁盘格式化操作时只需对写入数据的扇区执行格式化操作,大幅度减少了磁盘在系统的整个使用周期中的格式化耗时,减少了业务等待时间,并能够减少格式化过程中的系统消耗。

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