数据写入方法、装置、计算机设备和存储介质与流程

文档序号:34378993发布日期:2023-06-08 00:45阅读:38来源:国知局
数据写入方法、装置、计算机设备和存储介质与流程

本技术涉及存储领域,特别是涉及一种数据写入方法、装置、计算机设备、存储介质和计算机程序产品。


背景技术:

1、随着存储技术的发展,出现了一种纠删码算法,通过纠删码算法可以将n块数据编码得到m块冗余校验数据,保证数据的可靠性。因此,纠删码算法被广泛应用于存储领域。在计算校验数据时,待写入数据需要满足预设条带的大小。

2、相关技术中,在待写入数据是不满条带大小的情况下,是根据待写入数据的长度以及在预设条带的偏移量,计算该待写入数据需要的补齐数据的偏移量和长度,然后将零数据作为补齐数据,并将补齐数据和待写入数据合并成满条带数据。这样,可以将满条带数据以及满条带数据对应的校验数据存储至存储空间,存储空间中会存储冗余的零数据,导致存储空间的利用率较低。


技术实现思路

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、第二确定模块,用于如果所述剩余数目大于目标值,且所述剩余数目小于5所述预设条带包含的页面条带的数目,则确定所述剩余数目满足目标补齐条件;

41、第三确定模块,用于如果所述剩余数目等于所述目标值,或者所述剩余数目大于或者等于所述预设条带包含的页面条带的数目,则确定所述剩余数目不满足目标补齐条件。

42、在其中一个实施例中,所述第一确定模块具体用于:0在包含多个预设条带的存储空间中,确定所述剩余页面数据所在的目标页面条带的数目;基于所述目标页面条带的数目,确定所述目标页面条带包含的页面的总数目;基于所述总数目与所述剩余页面数据对应的剩余数目,计算补齐数目。

43、在其中一个实施例中,所述第一确定模块还具体用于:5基于所述目标页面条带的补齐数目,计算所述待写入数据的第一数据长度;

44、获取所述待写入数据在所述存储空间的偏移量;

45、基于所述待写入数据的第一数据长度以及所述待写入数据在所述存储空间的偏移量,将所述待写入数据写入所述存储空间。

46、在其中一个实施例中,所述第一确定模块还具体用于:0基于所述目标页面条带的补齐数目,确定补齐数据;

47、基于所述待写入数据以及所述补齐数据,计算校验数据;

48、将所述待写入数据、所述补齐数据以及所述校验数据,写入所述存储空间。

49、第三方面,本技术还提供了一种计算机设备。所述计算机设备包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时5实现以下步骤:

50、获取待写入数据包含的页面数据的数目;

51、根据所述待写入数据包含的所述页面数据的数目与预设条带所包含的页面的数目,计算所述待写入数据对应的剩余页面数据的剩余数目,所述预设条带包括多个页面条带;

52、在所述剩余数目满足目标补齐条件的情况下,在包含多个预设条带的存储空间中,确定所述剩余页面数据对应的目标页面条带的补齐数目,并基于所述目标页面条带的补齐数目,将所述待写入数据写入所述存储空间。

53、第四方面,本技术还提供了一种计算机可读存储介质。所述计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现以下步骤:

54、获取待写入数据包含的页面数据的数目;

55、根据所述待写入数据包含的所述页面数据的数目与预设条带所包含的页面的数目,计算所述待写入数据对应的剩余页面数据的剩余数目,所述预设条带包括多个页面条带;

56、在所述剩余数目满足目标补齐条件的情况下,在包含多个预设条带的存储空间中,确定所述剩余页面数据对应的目标页面条带的补齐数目,并基于所述目标页面条带的补齐数目,将所述待写入数据写入所述存储空间。

57、第五方面,本技术还提供了一种计算机程序产品。所述计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现以下步骤:

58、获取待写入数据包含的页面数据的数目;

59、根据所述待写入数据包含的所述页面数据的数目与预设条带所包含的页面的数目,计算所述待写入数据对应的剩余页面数据的剩余数目,所述预设条带包括多个页面条带;

60、在所述剩余数目满足目标补齐条件的情况下,在包含多个预设条带的存储空间中,确定所述剩余页面数据对应的目标页面条带的补齐数目,并基于所述目标页面条带的补齐数目,将所述待写入数据写入所述存储空间。

61、上述数据写入方法、装置、计算机设备、存储介质和计算机程序产品,该方法包括:获取待写入数据包含的页面数据的数目;根据待写入数据包含的页面数据的数目与预设条带所包含的页面的数目,计算待写入数据对应的剩余页面数据的剩余数目,预设条带包括多个页面条带;在剩余数目满足目标补齐条件的情况下,在包含多个预设条带的存储空间中,确定剩余页面数据对应的目标页面条带的补齐数目,并基于目标页面条带的补齐数目,将待写入数据写入存储空间。通过采用本方法,可以降低存储空间内的冗余零数据的占比,避免写入不必要的冗余的零数据,可以在保证并行写入效率的条件下,提高存储空间的利用率。

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