技术新讯 > 计算推算,计数设备的制造及其应用技术 > 数据的恢复方法及装置、存储介质和电子设备与流程  >  正文

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

  • 国知局
  • 2024-09-05 14:26:20

本技术实施例涉及数据恢复领域,具体而言,涉及一种数据的恢复方法及装置、存储介质和电子设备。

背景技术:

1、数据在分布式存储系统中存在多个副本,每次i/o(input/output,输入/输出)一般都保持强一致性,分布式存储系统中的存储设备(例如,磁盘)可能会存在各种异常,例如固件升级后磁盘离线,磁盘卡槽松动等导致拔盘事件的产生,这些异常会导致存储设备中存储的数据的丢失,例如,拔盘事件导致部分数据副本丢失。

2、相关技术中,是按照磁盘出现异常的时间的先后顺序,通过分布式存储系统中存储的数据的副本,对出现异常的存储设备上的数据进行恢复。这样的方式,可能导致i/o延迟会急剧增大,导致上层业务受到影响;若分布式存储系统中多个存储设备都出现拔盘事件,则可能导致数据在集群中丢失,整个业务瘫痪。

技术实现思路

1、本技术实施例提供了一种数据的恢复方法及装置、存储介质和电子设备,以至少解决相关技术中数据的恢复效率较低的问题。

2、根据本技术的一个实施例,提供了一种数据的恢复方法,分布式存储系统中部署有多个服务器,所述多个服务器中的各个服务器上部署有多个存储设备和恢复服务,存储设备用于存储服务器上的数据,所述恢复服务中部署有多个初始请求队列,所述多个初始请求队列对应存储设备所出现的异常的多种异常类型,所述多个初始请求队列对应多个处理优先级,所述方法应用于所述恢复服务,上述方法包括:在所述恢复服务所在的目标服务器中的多个存储设备中存在出现异常的目标存储设备的情况下,获取所述目标存储设备所出现的异常所对应的数据恢复请求,其中,所述数据恢复请求用于请求将所述目标存储设备中所存储的目标数据恢复至所述多个存储设备中除所述目标存储设备之外的参考存储设备;将所述数据恢复请求添加至所述多个初始请求队列中目标异常类型所对应的请求队列,得到多个目标请求队列,其中,所述目标存储设备所出现的异常属于所述目标异常类型,所述多种异常类型包括所述目标异常类型;按照所述多个处理优先级,执行所述多个目标请求队列中的所述数据恢复请求。

3、在一个示例性实施例中,所述将所述数据恢复请求添加至所述多个初始请求队列中目标异常类型所对应的请求队列,得到多个目标请求队列,包括:从多个初始请求队列中获取所述目标异常类型所对应的候选请求队列;将所述数据恢复请求添加至所述候选请求队列,得到所述多个目标请求队列。

4、在一个示例性实施例中,所述恢复服务中部署有恢复线程,所述按照所述多个处理优先级,执行所述多个目标请求队列中的所述数据恢复请求,包括:获取目标调用请求,其中,所述目标调用请求用于请求调用所述恢复线程执行所述多个目标请求队列中的所述数据恢复请求;调用所述恢复线程,按照所述多个处理优先级,执行所述多个目标请求队列中的所述数据恢复请求。

5、在一个示例性实施例中,所述多个目标请求队列包括n个请求队列,所述n个请求队列对应n个处理优先级,其中,n为大于或者等于2的正整数,所述调用所述恢复线程执行所述多个目标请求队列中的所述数据恢复请求,包括:调用所述恢复线程从所述n个请求队列中筛选处理优先级与第一优先级阈值满足目标匹配条件的m个请求队列,其中,m为小于或者等于n的正整数;调用所述恢复线程从所述m个请求队列中提取待处理的p个请求,并调用所述恢复线程执行所述p个请求,其中,p为正整数,所述p个请求包括所述数据恢复请求。

6、在一个示例性实施例中,在所述调用所述恢复线程执行所述p个请求之后,所述方法还包括:检测所述恢复线程当前已处理的请求的第一数量与数量阈值之间的第一关系,其中,所述第一数量的请求包括所述p个请求;在所述第一关系用于指示所述第一数量小于所述数量阈值、且所述p个请求不包括所述数据恢复请求的情况下,调用所述恢复线程从n-m个请求队列中筛选处理优先级与第二优先级阈值满足目标匹配条件的r个请求队列,其中,所述第二优先级阈值小于所述第一优先级阈值,r为小于或者等于n-m的正整数;调用所述恢复线程从所述r个请求队列中提取待处理的t个请求,并调用所述恢复线程执行所述t个请求,其中,t为正整数,t小于所述数量阈值减去所述第一数量所得到的值,所述t个请求包括所述数据恢复请求。

7、在一个示例性实施例中,在所述调用所述恢复线程执行所述t个请求之后,所述方法还包括:检测所述恢复线程当前已处理的请求的第二数量与数量阈值之间的第二关系,其中,所述第二数量的请求包括所述p个请求和所述t个请求;在所述第二关系用于指示所述第二数量小于所述数量阈值、且所述p个请求和所述t个请求均不包括所述数据恢复请求的情况下,调用所述恢复线程从n-m-r个请求队列中筛选处理优先级与第三优先级阈值满足目标匹配条件的w个请求队列,其中,所述第三优先级阈值小于所述第二优先级阈值,w为小于或者等于n-m-r的正整数;调用所述恢复线程从所述w个请求队列中提取待处理的q个请求,并调用所述恢复线程执行所述q个请求,其中,q为正整数,q小于或者等于所述数量阈值减去所述第二数量所得到的值,所述q个请求包括所述数据恢复请求。

8、在一个示例性实施例中,所述调用所述恢复线程执行所述p个请求,包括:通过执行以下步骤,调用所述恢复线程执行所述p个请求中的所述数据恢复请求:调用所述恢复线程检测出现异常的所述目标存储设备中存储的候选数据的可用性,其中,所述可用性用于指示所述候选数据与参考服务器上存储的所述目标数据之间是否一致,所述参考服务器是所述多个服务器中除所述目标服务器外的服务器;在所述可用性用于指示所述候选数据与所述多个服务器中除所述目标服务器外的服务器上存储的所述目标数据之间至少存在部分参考数据一致的情况下,调用所述恢复线程从所述目标存储设备存储的所述候选数据中提取所述参考数据,并调用所述恢复线程从所述参考服务器中存储的所述目标数据中提取除所述参考数据之外的恢复数据;调用所述恢复线程将所述参考数据和所述恢复数据复制至所述参考存储设备;其中,所述调用所述恢复线程从所述参考服务器中存储的所述目标数据中提取除所述参考数据之外的恢复数据,包括:生成目标提取请求,其中,所述目标提取请求用于请求从所述参考服务器中存储的所述目标数据中提取所述恢复数据;向所述参考服务器发送所述目标提取请求,并接收所述参考服务器响应所述目标提取请求返回的所述恢复数据,其中,所述目标提取请求中携带了所述恢复数据的标识。

9、根据本技术的另一个实施例,提供了一种数据的恢复装置,分布式存储系统中部署有多个服务器,所述多个服务器中的各个服务器上部署有多个存储设备和恢复服务,存储设备用于存储服务器上的数据,所述恢复服务中部署有多个初始请求队列,所述多个初始请求队列对应存储设备所出现的异常的多种异常类型,所述多个初始请求队列对应多个处理优先级,所述装置应用于所述恢复服务,上述装置包括:获取模块,用于在所述恢复服务所在的目标服务器中的多个存储设备中存在出现异常的目标存储设备的情况下,获取所述目标存储设备所出现的异常所对应的数据恢复请求,其中,所述数据恢复请求用于请求将所述目标存储设备中所存储的目标数据恢复至所述多个存储设备中除所述目标存储设备之外的参考存储设备;添加模块,用于将所述数据恢复请求添加至所述多个初始请求队列中目标异常类型所对应的请求队列,得到多个目标请求队列,其中,所述目标存储设备所出现的异常属于所述目标异常类型,所述多种异常类型包括所述目标异常类型;执行模块,用于按照所述多个处理优先级,执行所述多个目标请求队列中的所述数据恢复请求。

10、根据本技术的又一个实施例,还提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

11、根据本技术的又一个实施例,还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

12、根据本技术的又一个实施例,还提供了一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现上述任一项方法实施例中的步骤。

13、通过本技术,分布式存储系统中的各个服务器中部署有恢复服务和多个存储设备,恢复服务中部署有多个请求队列,按照多个请求队列所对应的多个处理优先级,对请求队列中的请求进行处理,通过这样的方式,避免了按照获取到的数据恢复请求的时间的先后顺序处理请求,而是按照存储设备所出现的异常的异常类型所对应的优先级,对多个请求队列中的请求进行区分处理,实现了优先处理优先级较高的数据恢复请求,因此,可以解决数据的恢复效率较低问题,达到提升数据的恢复效率的效果。

本文地址:https://www.jishuxx.com/zhuanli/20240905/286480.html

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 YYfuon@163.com 举报,一经查实,本站将立刻删除。