System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种数据重构有效性的检查方法和装置制造方法及图纸_技高网

一种数据重构有效性的检查方法和装置制造方法及图纸

技术编号:40385014 阅读:8 留言:0更新日期:2024-02-20 22:20
本申请提供了一种数据重构有效性的检查方法和装置,该装置通过确定故障磁盘上需要重构的数据量;根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率;根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构,实现了根据故障磁盘所在存储池的拓扑结构和数据冗余策略,预估数据重构需要的空间,进而指导数据重构流程,能够有效的避免数据重构时空间不足导致的磁盘集群不可用的情况。

【技术实现步骤摘要】

本申请涉及计算机,具体涉及一种数据重构有效性的检查方法和装置


技术介绍

1、在分布式存储系统中,当某些磁盘发生故障时,其上的数据将不可访问。为了使故障磁盘中的数据仍能够满足预定的数据冗余策略,需要将故障磁盘上的数据在剩余可用的磁盘上进行重构。

2、在对故障磁盘上的数据进行重构后,总的数据量并没有减少,而可用的磁盘数量减少了,因此每个磁盘的空间使用量相对于重构前的会有所增长。当磁盘空间的使用量超过了允许的阈值,或者达到了100%,不仅数据重构无法继续进行,主机io也会因为磁盘空间不足而无法写入新的数据。在ceph分布式存储系统中,在每个放置策略组pg重构时,不会检查重构osd上的剩余空间是否充足,直至空间不足,此时不仅重构会失败,也会导致主机io因osd空间不足而中断。

3、因此,如何在对故障磁盘上的数据进行重构时,避免出现重构导致磁盘集群不可用的情况是有待解决的技术问题。


技术实现思路

1、本申请提供一种数据重构有效性的检查方法和装置,可以解决现有技术中存在的对故障磁盘上的数据进行重构时可能导致的磁盘集群不可用的技术问题。

2、第一方面,本申请实施例提供数据重构有效性的检查方法,所述数据重构有效性的检查方法包括:

3、确定故障磁盘上需要重构的数据量;

4、根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率;

5、根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构。

6、结合第一方面,在一种实施方式中,根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构,包括:

7、判断预估空间使用率是否超过预设的第一使用率阈值;

8、若预估空间使用率超过所述第一使用率阈值,则不进行数据重构;否则,开始数据重构。

9、一些实施例中,该方法还包括:

10、在进行数据重构时,根据所述故障磁盘上还未重构的数据量和各个所述目标磁盘当前的空间使用率,计算所述目标磁盘在进行数据重构后的预估空间使用率是否超过所述第一使用率阈值;

11、若预估空间使用率超过所述第一使用率阈值,则关闭数据重构;

12、否则,继续进行数据重构,直至重构结束。

13、一些实施例中,该方法还包括:

14、在进行数据重构时,根据所述故障磁盘上还未重构的数据量和各个所述目标磁盘当前的空间使用率,确定所述目标磁盘在进行数据重构后的预估空间使用率是否超过预设第二使用率阈值;

15、若预估空间使用率超过所述第二使用率阈值,则开启主机io反压操作。

16、一些实施例中,在开启主机io反压操作之后,还包括:

17、在预估空间使用率小于或等于所述第二使用率阈值时,关闭主机io反压操作。

18、一些实施例中,所述第二使用率阈值小于所述第一使用率阈值。

19、一些实施例中,根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率,包括:

20、根据所述存储池的拓扑结构和冗余策略确定所述目标磁盘的个数;

21、将需要重构的数据量除以所述目标磁盘的个数,得到各个所述目标磁盘进行数据重构所需的存储空间;

22、确定各个所述目标磁盘当前的已使用容量;

23、根据各个所述目标磁盘进行数据重构所需的存储空间和所述已使用容量,确定在各个所述目标磁盘上进行数据重构后的预估空间使用率。

24、第二方面,本申请实施例提供了一种数据重构有效性的检查装置,该装置包括:

25、确定模块,其用于确定故障磁盘上需要重构的数据量;

26、计算模块,其用于根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率。

27、判断模块,其用于根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构。

28、结合第二方面,在一种实施方式中,所述判断模块还用于:

29、判断预估空间使用率是否超过预设的第一使用率阈值;

30、若预估空间使用率超过所述第一使用率阈值,则不进行数据重构;否则,开始数据重构。

31、一些实施例中,所述判断模块还用于:

32、在进行数据重构时,根据所述故障磁盘上还未重构的数据量和各个所述目标磁盘当前的空间使用率,计算所述目标磁盘在进行数据重构后的预估空间使用率是否超过所述第一使用率阈值;

33、若预估空间使用率超过所述第一使用率阈值,则关闭数据重构;

34、否则,继续进行数据重构,直至重构结束。

35、本实施例提供的技术方案带来的技术效果包括:提前预估重构所需的磁盘空间,拦截那些本身就无法完成的重构,避免重构导致集群不可用;实时检查重构进度并判断重构所需空间,提前中止无法完成的重构,避免重构导致集群不可用;通过分别设置主机io的空间使用率阈值和数据重构的空间使用阈值,结合重构空间检查方法,实现优先保主机io或优先保数据冗余的重构控制策略。

36、本申请提供了一种数据重构有效性的检查方法和装置,该装置通过确定故障磁盘上需要重构的数据量;根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率;根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构,实现了根据故障磁盘所在存储池的拓扑结构和数据冗余策略,预估数据重构需要的空间,进而指导数据重构流程,能够有效的避免数据重构时空间不足导致的磁盘集群不可用的情况。

本文档来自技高网...

【技术保护点】

1.一种数据重构有效性的检查方法,其特征在于,所述数据重构有效性的检查方法包括:

2.如权利要求1所述的数据重构有效性的检查方法,其特征在于,根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构,包括:

3.如权利要求2所述的数据重构有效性的检查方法,其特征在于,还包括:

4.如权利要求3所述的数据重构有效性的检查方法,其特征在于,还包括:

5.如权利要求4所述的数据重构有效性的检查方法,其特征在于,在开启主机IO反压操作之后,还包括:

6.如权利要求5所述的数据重构有效性的检查方法,其特征在于,所述第二使用率阈值小于所述第一使用率阈值。

7.如权利要求1所述的数据重构有效性的检查方法,其特征在于,根据需要重构的数据量以及所述故障磁盘所在存储池的拓扑结构和数据冗余策略,计算各个用于数据重构的目标磁盘在进行数据重构后的预估空间使用率,包括:

8.一种数据重构有效性的检查装置,其特征在于,包括:

9.如权利要求8所述的数据重构有效性的检查装置,其特征在于,所述判断模块还用于:

<p>10.如权利要求9所述的数据重构有效性的检查装置,其特征在于,所述判断模块还用于:

...

【技术特征摘要】

1.一种数据重构有效性的检查方法,其特征在于,所述数据重构有效性的检查方法包括:

2.如权利要求1所述的数据重构有效性的检查方法,其特征在于,根据预估空间使用率判断是否对所述故障磁盘上的数据进行重构,包括:

3.如权利要求2所述的数据重构有效性的检查方法,其特征在于,还包括:

4.如权利要求3所述的数据重构有效性的检查方法,其特征在于,还包括:

5.如权利要求4所述的数据重构有效性的检查方法,其特征在于,在开启主机io反压操作之后,还包括:

6.如权利要求5所述的数据重构有效...

【专利技术属性】
技术研发人员:王洋洋
申请(专利权)人:中电云计算技术有限公司
类型:发明
国别省市:

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

1