【技术实现步骤摘要】
数据恢复方法及装置
本专利技术涉及数据恢复
,特别是涉及一种数据恢复方法及装置。
技术介绍
随着网络的普及,文件传输是随处可见,如用户向数据服务器请求目标文件,数据服务器从磁盘中读取到所存储的目标文件,并将目标文件下发给用户,完成文件传输。在包含数据服务器集群的分布式系统中,使用条带技术对磁盘中的文件进行存储。具体地,分布式系统将多个磁盘进行分组,一般按照m+n如4+2/6+3/8+4等分组模式进行分组,其中m个磁盘用来保存文件的原始数据,n个磁盘用来存储对原始数据进行编码后得到的编码数据。另外,磁盘按照一定大小划分为若干数据块,从一组磁盘中的每个磁盘中分别获取一个数据块,这组数据块称为条带。在向磁盘中的数据块存储文件后,分布式系统会记录一个文件存储在哪些条带中。基于该存储方案,数据服务器从磁盘读取文件具体是,根据该文件对应的条带,从磁盘中读取该条带所包含的数据块。然而,数据服务器在读取时可能会出现磁盘损坏、磁盘的中某个数据块损坏、磁盘下线以及网络故障等,导致数据块读取失败,因此数据服务器需要启动数据恢 ...
【技术保护点】
1.一种数据恢复方法,其特征在于,包括:/n数据服务器确定待读取的目标文件,以及确定所述目标文件对应的条带;其中所述条带记录有磁盘中的多个数据块,且多个数据块具有排列顺序;/n数据服务器确定所述目标文件在多个数据块中的首个存储数据块;/n数据服务器将所述首个存储数据块作为当前数据块,并从磁盘中读取所述当前数据块,若所述当前数据块读取失败,则触发解码服务器按照下述步骤进行数据恢复:/n从多个所述数据块中获取所述当前数据块之外的预设数量的其他数据块作为备用数据块;确定所述目标文件在所述当前数据块的起始存储位置以及终止存储位置;从所述备用数据块中获取所述起始存储位置以及所述终止存 ...
【技术特征摘要】
1.一种数据恢复方法,其特征在于,包括:
数据服务器确定待读取的目标文件,以及确定所述目标文件对应的条带;其中所述条带记录有磁盘中的多个数据块,且多个数据块具有排列顺序;
数据服务器确定所述目标文件在多个数据块中的首个存储数据块;
数据服务器将所述首个存储数据块作为当前数据块,并从磁盘中读取所述当前数据块,若所述当前数据块读取失败,则触发解码服务器按照下述步骤进行数据恢复:
从多个所述数据块中获取所述当前数据块之外的预设数量的其他数据块作为备用数据块;确定所述目标文件在所述当前数据块的起始存储位置以及终止存储位置;从所述备用数据块中获取所述起始存储位置以及所述终止存储位置包含的数据,并使用预设恢复算法将所述数据解码后得到所述当前数据块的恢复数据;
若所述当前数据块读取成功,则数据服务器将所述当前数据块更新为所述当前数据块的下一数据块,返回执行从磁盘中读取所述当前数据块的步骤,直至所述当前数据块为末尾的数据块。
2.根据权利要求1所述的数据恢复方法,其特征在于,所述确定所述目标文件在多个数据块中的首个存储数据块,包括:
获得所述目标文件的读取偏移地址,以及获得数据块的单位数据量;
将所述读取偏移地址除以所述条带的原始数据的数据量,得到第一商及第一余数;
将所述第一余数除以所述数单位数据量,得到第二商及第二余数;
将所述第二商作为数据块索引,并将多个所述数据块中、所述数据块索引对应的数据块确定为所述目标文件在多个数据块中的首个存储数据块。
3.根据权利要求2所述的数据恢复方法,其特征在于,所述确定所述目标文件在所述当前数据块的起始存储位置以及终止存储位置,包括:
若所述当前数据块为首个存储数据块,则获得所述当前数据块在磁盘中的逻辑编号;
将所述逻辑编号乘以所述单位数据量,并将相乘结果与所述第二余数相加,得到相加结果;
将所述相加结果确定为所述目标文件在所述当前数据块的起始存储位置;
将所述单位数据量减去所述第二余数,将相减结果与所述目标文件的数据量进行比对后,确定两者中的较小值;
将所述起始存储位置与所述较小值相加后,作为所述目标文件在所述当前数据块的终止存储位置。
4.根据权利要求2所述的数据恢复方法,其特征在于,所述确定所述目标文件在所述当前数据块的起始存储位置以及终止存储位置,包括:
若所述当前数据块非首个存储数据块,则获得所述当前数据块在磁盘中的逻辑编号;
将所述逻辑编号乘以所述单位数据量,并将相乘结果确定为所述目标文件在所述当前数据块的起始存储位置;
将所述目标文件的数据量减去已读取的数据块的数据量,得到相减结果,并将相减结果与所述单位数据量进行比对后,确定两者中的较小值;
将所述起始存储位置与所述较小值相加后,作为所述目标文件在所述当前数据块的终止存储位置。
5.根据权利要求1所述的...
【专利技术属性】
技术研发人员:徐佳宏,李银,李威青,刘彬,
申请(专利权)人:深圳市茁壮网络股份有限公司,
类型:发明
国别省市:广东;44
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。