[发明专利]一种数据恢复方法、装置及电子设备有效
申请号: | 201710446718.7 | 申请日: | 2017-06-14 |
公开(公告)号: | CN107346273B | 公开(公告)日: | 2020-09-04 |
发明(设计)人: | 赵东富;陈永旺 | 申请(专利权)人: | 北京奇艺世纪科技有限公司 |
主分类号: | G06F11/14 | 分类号: | G06F11/14;H04L12/24 |
代理公司: | 北京柏杉松知识产权代理事务所(普通合伙) 11413 | 代理人: | 马敬;项京 |
地址: | 100080 北京市海淀*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 数据 恢复 方法 装置 电子设备 | ||
本发明实施例提供了一种数据恢复方法、装置及电子设备,方法包括:获得目标对象的目标数据块;获得目标数据块的两个相邻数据块,并检测两个相邻数据块中是否存在故障数据块;如果存在故障数据块,获得目标对象的所有数据块,并从目标对象的所有数据块中确定故障数据块以及正常数据块;判断能否对各个故障数据块所在的路径进行加锁,如果能加锁,则将各个故障数据块所在的路径按照预设顺序依次进行加锁;利用预设数量个正常数据块,将各个故障数据块恢复成与该故障数据块对应的正常数据块,向各个故障数据块所在的路径对应的服务器发送与该故障数据块对应的正常数据块。应用本发明实施例提供的方案进行数据恢复时,实现了节约网络资源和计算资源。
技术领域
本发明涉及云存储技术领域,特别是涉及一种数据恢复方法、装置及电子设备。
背景技术
近几年,云存储系统得到了飞速发展,常用的云存储系统包括:Microsoft AzureStorage(微软云存储),Facebook(脸书),Google(谷歌)和Openstack Swift(开源云端存储项目)。其中,Openstack Swift云存储系统是一种分布式对象存储系统,所谓分布式是指该云存储系统中包括多台服务器,所谓对象存储就是将数据作为一个对象进行存储,例如,图片数据,视频数据,音频数据,文档数据等等,都可以作为对象存储于Openstack Swift云存储系统的任一个服务器中。
为了防止系统故障带来的数据损失,提高数据的可用性和可靠性,很多云存储系统采用的存储策略为副本策略。所谓副本策略就是将数据存储多份,每一份数据叫做一个副本。为了防止相邻部分服务器集体故障,数据的不同副本被存储在不同的物理区域的不同服务器的不同磁盘。这样,即使其中一个副本丢失,数据仍然存在。
另一种常用的存储策略是纠删码。相对于副本策略而言,纠删码在保证数据可用性和可靠性的同时,节省了大量的存储空间。纠删码的基本原理是在将原有的数据分成k个数据块,然后通过对这k个数据块和一个辅助矩阵进行运算,得到r个校验块。在这k+r个校验块和数据块中,即使丢失了其中任意1到r个校验块和/或数据块,都可以通过剩余的数据块和校验块进行恢复。在实际应用中,r的值一般是小于k的,所以在保证数据冗余性的前提下,节约了存储空间,从而节约了成本。
目前,很多云存储系统都应用纠删码作为存储策略,以采用纠删码存储策略的Openstack Swift云存储系统的数据恢复过程为例进行说明,数据恢复过程为:云存储系统中的每台服务器通过Reconstructor(恢复)进程对存储于该服务器上的每个数据块的相邻数据块进行扫描,每个数据块的相邻数据块是指与该数据块属于同一对象,并且与该数据块在哈希环上相邻的数据块,如果发现数据块的相邻数据块为故障数据块时,则会对故障数据块进行恢复。服务器在对故障数据块进行恢复时,需要从其他服务器读取k份正常数据块,进而利用这k份正常数据块进行矩阵计算,将故障数据块恢复成正常数据块,从而将正常数据块发送到存储故障数据块的服务器,完成对故障数据块的恢复。
上述方法存在多个服务器同时对一个故障数据块进行数据恢复的问题,例如,如图1所述的分布式系统架构中,数据块b的相邻数据块为数据块a和数据块c,数据块c的相邻数据块为数据块b和数据块d,数据块a、b、c、d分别存储于分布式系统101的服务器A、B、C、D中,如果数据块c为故障数据块,则服务器B和服务器D都能检测出其为故障数据块,进而服务器B和服务器D都可能会对数据块c进行数据恢复,从而可能导致云存储系统的网络资源和计算资源的浪费。
发明内容
本发明实施例的目的在于提供一种数据恢复方法、装置及电子设备,以实现节约网络资源和计算资源。具体技术方案如下:
第一方面,本发明实施例提供了一种数据恢复方法,应用于分布式存储系统中的服务器,针对每台所述服务器,所述方法包括:
获得目标对象的目标数据块,其中,所述目标数据块为:所述目标对象的所有数据块中存储于该服务器上的数据块;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京奇艺世纪科技有限公司,未经北京奇艺世纪科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201710446718.7/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种便携式羽毛球套装
- 下一篇:触摸屏响应性能测试平台和方法
- 数据显示系统、数据中继设备、数据中继方法、数据系统、接收设备和数据读取方法
- 数据记录方法、数据记录装置、数据记录媒体、数据重播方法和数据重播装置
- 数据发送方法、数据发送系统、数据发送装置以及数据结构
- 数据显示系统、数据中继设备、数据中继方法及数据系统
- 数据嵌入装置、数据嵌入方法、数据提取装置及数据提取方法
- 数据管理装置、数据编辑装置、数据阅览装置、数据管理方法、数据编辑方法以及数据阅览方法
- 数据发送和数据接收设备、数据发送和数据接收方法
- 数据发送装置、数据接收装置、数据收发系统、数据发送方法、数据接收方法和数据收发方法
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置
- 数据发送方法、数据再现方法、数据发送装置及数据再现装置