System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及分布式存储,具体涉及重构时间间隔的确定方法和装置。
技术介绍
1、随着大数据和云计算技术的飞速发展,分布式存储系统已成为处理海量数据不可或缺的基础设施。分布式存储系统通过整合多台服务器节点及其上的磁盘资源,构建出高效、可扩展的存储集群,为各类应用提供稳定可靠的存储服务。然而,分布式存储系统在实际运行过程中,其面临着各种复杂的故障场景,包括但不限于网络波动、硬件故障(如节点故障、硬盘损坏)等,这些故障若处理不当,可能严重威胁到数据的完整性和系统的可用性。
2、目前,为了应对分布式存储系统中潜在数据的丢失风险,分布式存储系统通常配备有自动故障检测和恢复机制;其中,当检测到对象存储设备(object-based storagedevice,osd)离线时,会立即触发数据重构流程,也即将受影响的数据块从离线osd迁移到正常osd上,以维持数据的完整性和系统的可用性。
3、然而,目前的立即自动重构机制的处理方式过于僵化,降低系统的资源利用率。
技术实现思路
1、有鉴于此,本专利技术提供了一种重构时间间隔的确定方法、装置、计算机设备及存储介质,以解决目前的立即自动重构机制的处理方式过于僵化,降低系统的资源利用率的问题。
2、第一方面,本专利技术提供了一种重构时间间隔的确定方法,该方法包括:基于存储池的类型对应的匹配规则,确定与对象存储设备状态列表中第一目标状态相匹配的第一设备信息;其中,第一目标状态是第一目标对象存储设备离线但未被踢出存储池的状
3、本申请实施例提供的重构时间间隔的确定方法,通过存储池的类型对应的匹配规则,能够针对不同的存储池类型灵活地确定对象存储设备状态列表中离线但未被踢出存储池的第一目标对象存储设备;通过第一目标对象存储设备和当前离线但未被踢出存储池的第二目标对象存储设备之间的包含关系,能够进一步细化故障场景的分类;然后根据对应故障场景灵活配置的重构时间间隔,从而可以针对不同的故障场景确定数据重构的触发时间,提升了所确定的第二设备信息的重构时间的合理性,从而提升了资源利用效率。
4、在一个可选的实施方式中,基于第一设备信息与第二设备信息之间的包含关系,确定第二设备信息的对应故障场景,包括以下至少一项:若第一设备信息中包括第二设备信息,则从预设故障场景中,确定与第一设备信息对应的第一故障场景,将第一故障场景作为第二设备信息的对应故障场景;其中,第二设备信息指示当前离线但未被踢出存储池的第二目标对象存储设备;若第一设备信息中未包括第二设备信息,则确定第二设备信息所处的节点所运行的对象存储设备集合;确定对象存储设备集合中所包括的第二目标对象存储设备的计量值;从预设故障场景中,确定与第二目标对象存储设备的计量值对应的第二故障场景,将第二故障场景作为第二设备信息的对应故障场景。
5、本申请实施例提供的重构时间间隔的确定方法,若第一设备信息中包括第二设备信息,通过从预设的故障场景中直接确定与第一设备信息对应的第一故障场景的方式,能够迅速且准确地定位第二设备信息的对应故障场景。若第一设备信息中未包括第二设备信息,通过分析第二设备所在节点的对象存储设备集合及其计量值,间接确定第二设备的故障场景,从而能够覆盖更多的故障情况种类,提高所确定的对应故障场景的全面性和准确性。
6、在一个可选的实施方式中,从预设故障场景中,确定与第二目标对象存储设备的计量值对应的第二故障场景,将第二故障场景作为第二设备信息的对应故障场景,包括:确定第二目标对象存储设备的数量和对象存储设备集合中对象存储设备的总数量之间的比例;检测比例是否超过预设比例;若比例超过预设比例,则从预设故障场景中,确定与预设比例对应的第二故障场景,将第二故障场景作为第二设备信息的对应故障场景;若比例未超过预设比例,则从预设故障场景中,确定与比例对应的第三故障场景,将第二故障场景作为第二设备信息的对应故障场景。
7、本申请实施例提供的重构时间间隔的确定方法,通过确定计算第二目标对象存储设备在对象存储设备集合中的比例,能够确定不同比例对应的故障场景,并结合预设比例作为分界线的方式,从而对故障场景进行更精细地划分,进而提高所确定的故障场景的准确性。
8、在一个可选的实施方式中,存储池的类型包括:副本模式和纠删码模式;其中,基于存储池的类型对应的匹配规则,从对象存储设备状态列表中匹配第一设备信息,包括:当对象存储设备状态列表中在线对象存储设备的数量达到最大值时,记录在线对象存储设备的信息;当存储池的类型为副本模式,且检测到任意对象存储设备离线时,检测对象存储设备状态列表中的当前在线对象存储设备的数量是否大于第一预设数量;若当前在线对象存储设备的数量未大于第一预设数量,从基于对象存储设备状态列表确定的最大数量的在线对象存储设备中,确定不属于当前在线对象存储设备的信息;当存储池的类型为纠删码模式,且检测到任意对象存储设备离线时,检测对象存储设备状态列表中的当前在线对象存储设备的数量是否大于第二预设数量;若当前在线对象存储设备的数量未大于第二预设数量,从基于对象存储设备状态列表确定的最大数量的在线对象存储设备中,确定不属于当前在线对象存储设备的信息。
9、本申请实施例提供的重构时间间隔的确定方法,通过存储池的类型确定不同的匹配规则,能够提高匹配规则的灵活性和适用性。当检测到对象存储设备离线时,通过比较当前在线设备数量是否大于对应匹配规则的数量决定是否触发故障处理流程,从而提高触发故障处理流程的准确性。
10、在一个可选的实施方式中,上述方法还包括:获取第二目标对象存储设备的最近一次离线的时间;基于重构时间间隔与最近一次离线的时间之和,确定存储池重构时间;若当前次离线的时间为存储池重构时间,将第二目标对象存储设备踢出存储池,并触发存储池的自动重构。
11、本申请实施例提供的重构时间间隔的确定方法,通过计算最近一次离线时间与重构时间间隔的和值来确定重构时间,确保只在第二目标对象设备真正需要被替换才操作存储池进行重构,避免因频繁重构而导致的资源浪费和性能下降。
12、在一个可选的实施方式中,上述方法还包括以下至少一项:当存储池的类型为副本模式,若当前在线对象存储设备的数量大于第一预设数量,将离线的对象存储设备删除;当存储池的类型为纠删码模式,若当前在线对象存储设备的数量大于第二预设数量,将离线的对象存储设备删除。
13、本申请实施例提供的重构时间间隔的确定方法,通过保持多个数据来提高数据的可用性和容错能力。当在线对象存储设备的数量大于第一预设数量时,意味着即使有部分设备离线,剩余的设备仍然能够提供足够的数据,因此可以安全地删除离线的设备,不会影响到数据的可用性和完整性的同时,优化资源利用,提高系统的整体性能。
14、在一个可选的实施方式中,确定第二设备信息所处的节点,包括:获取节本文档来自技高网...
【技术保护点】
1.一种重构时间间隔的确定方法,其特征在于,所述方法包括:
2.根据权利要求1所述的重构时间间隔的确定方法,其特征在于,所述基于所述第一设备信息与第二设备信息之间的包含关系,确定第二设备信息的对应故障场景,包括以下至少一项:
3.根据权利要求2所述的重构时间间隔的确定方法,其特征在于,所述从所述预设故障场景中,确定与所述第二目标对象存储设备的计量值对应的第二故障场景,将所述第二故障场景作为所述第二设备信息的对应故障场景,包括:
4.根据权利要求1-3任一项所述的重构时间间隔的确定方法,其特征在于,所述存储池的类型包括:副本模式和纠删码模式;其中,所述基于存储池的类型对应的匹配规则,从对象存储设备状态列表中匹配第一设备信息,包括:
5.根据权利要求1-3中任一项所述的重构时间间隔的确定方法,其特征在于,所述方法还包括:
6.根据权利要求4所述的重构时间间隔的确定方法,其特征在于,所述方法还包括以下至少一项:
7.根据权利要求2所述的重构时间间隔的确定方法,其特征在于,所述确定所述第二设备信息所处的节点,包括:<
...【技术特征摘要】
1.一种重构时间间隔的确定方法,其特征在于,所述方法包括:
2.根据权利要求1所述的重构时间间隔的确定方法,其特征在于,所述基于所述第一设备信息与第二设备信息之间的包含关系,确定第二设备信息的对应故障场景,包括以下至少一项:
3.根据权利要求2所述的重构时间间隔的确定方法,其特征在于,所述从所述预设故障场景中,确定与所述第二目标对象存储设备的计量值对应的第二故障场景,将所述第二故障场景作为所述第二设备信息的对应故障场景,包括:
4.根据权利要求1-3任一项所述的重构时间间隔的确定方法,其特征在于,所述存储池的类型包括:副本模式和纠删码模式;其中,所述基于存储池的类型对应的匹配规则,从对象存储设备状态列表中...
【专利技术属性】
技术研发人员:孙润宇,王庆海,侯斌,
申请(专利权)人:郑州浪潮数据技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。