基于分布式系统的数据恢复方法及系统与流程

文档序号:15829014发布日期:2018-11-03 00:15阅读:822来源:国知局

本发明属于分布式系统的数据恢复技术领域,特别是涉及基于分布式系统的数据恢复方法及系统。

背景技术

分布式系统中节点内的数据备份与恢复对于分布式系统的管理以及出现故障后的修复及其重要。由于分布式系统常用于处理相类似的事务或进程,因此在分布式节点中存在数据的大量冗余,在数据备份与恢复的过程中如果不考虑数据的冗余从而大量备份及恢复,会导致浪费存储空间以及降低恢复效率,给分布式系统的实时性运行带来了较大的影响,降低了实时性。同时在分布式节点中存在死节点,该类节点数据长时间没有更新,属于无效数据,如果在数据备份与恢复的过程中也参与数据的恢复,会导致数据恢复的效率降低。

本发明致力于研发一种基于分布式系统的数据恢复方法及系统,用于解决分布式系统中多节点分布式系统数据恢复效率及恢复效果差的问题。



技术实现要素:

本发明的目的在于提供基于分布式系统的数据恢复方法及系统,通过节点热活动间隔时间t以及存储冗余度p计算节点恢复的优先级,实现了对分布式系统中不同节点按照优先级恢复,解决了现有分布式系统中多节点分布式系统数据恢复效率及恢复效果差的问题。

为解决上述技术问题,本发明是通过以下技术方案实现的:

本发明为基于分布式系统的数据恢复方法,包括如下步骤:

s000:计算当前节点热活动间隔时间t;

s001:计算当前节点在分布式系统中存储冗余度p;

s002:判断当前节点是否为失效节点,若是,执行s004;若否,执行s003;

s003:根据优先级堆栈算法将节点入栈;

s004:删除当前节点;

s005:将堆栈中节点对应数据依次恢复。

优选地,s002中判断当前节点是否为失效节点的具体过程如下:

判断热活动时间间隔t是否大于时间阈值tmax;若是,则为失效节点;若否,则不是失效节点;所述热活动时间间隔t为节点内与节点间均没有进行数据的存储、传送、接收的时间间隔。

优选地,s004中删除当前节点为将当前节点从分布式系统中移除;所述存储冗余度p为当前节点与分布式系统中其他节点的数据冗余度。

优选地,s003中根据优先级堆栈算法将节点入栈的具体过程如下:

t000:计算当前节点的优先级为:

j=pwp+twt;

其中,为存储冗余度p的权值,为热活动间隔时间t的权值;

t001:判断优先级堆栈中是否存在存储节点,若是,则执行t002,若否,则执行t004;

t002:取出优先级堆栈栈顶节点并比较栈顶节点优先级是否大于当前节点优先级;若是,则执行t003;若否,则执行t004;

t003:将栈顶节点放入缓冲堆栈内并执行t002;

t004:将当前节点备份并将备份地址放入优先级堆栈栈顶;

t005:若缓冲堆栈不为空,则将缓冲堆栈内节点依次放入优先级堆栈栈顶。

基于分布式系统的数据恢复系统,包括:

存储冗余度计算模块,用于计算节点在分布式系统中存储冗余度p;还用于传递存储冗余度p至优先级判断模块;

节点监听模块,用于监听节点热活动间隔时间t并判断节点是否为失效节点;还用于传递热活动间隔时间t至优先级判断模块;

所述优先级判断模块,用于接收节点监听模块传递的热活动间隔时间t以及存储冗余度计算模块传递的存储冗余度p,还用于计算节点的优先级;

堆栈管理模块,用于根据优先级将节点备份地址存放在优先级堆栈中,还用于控制节点在缓冲栈中的存取;

节点备份模块;用于对节点内数据备份。

本发明具有以下有益效果:

1、本发明通过节点热活动间隔时间t以及存储冗余度p计算节点恢复的优先级,简化了分布式系统中各节点的数据有效备份与恢复,减少了备份空间的占用,提高了备份效率;

2、本发明通过采用优先级堆栈以及缓冲堆栈,优化了分布式节点中各节点间的数据备份与恢复顺序,提高了分布式系统中各节点的恢复效率。

当然,实施本发明的任一产品并不一定需要同时达到以上所述的所有优点。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本发明的基于分布式系统的数据恢复方法的流程图;

图2为s003中根据优先级堆栈算法将节点入栈的流程图;

图3为本发明的基于分布式系统的数据恢复的系统结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1所示,本发明为基于分布式系统的数据恢复方法,包括如下步骤:

s000:计算当前节点热活动间隔时间t;

s001:计算当前节点在分布式系统中存储冗余度p;

s002:判断当前节点是否为失效节点,若是,执行s004;若否,执行s003;

s003:根据优先级堆栈算法将节点入栈;

s004:删除当前节点;

s005:将堆栈中节点对应数据依次恢复。

其中,s002中判断当前节点是否为失效节点的具体过程如下:

判断热活动时间间隔t是否大于时间阈值tmax;若是,则为失效节点;若否,则不是失效节点;所述热活动时间间隔t为节点内与节点间均没有进行数据的存储、传送、接收的时间间隔。

其中,s004中删除当前节点为将当前节点从分布式系统中移除;所述存储冗余度p为当前节点与分布式系统中其他节点的数据冗余度。

请参阅图2所示,s003中根据优先级堆栈算法将节点入栈的具体过程如下:

t000:计算当前节点的优先级为:

j=pwp+twt;

其中,为存储冗余度p的权值,为热活动间隔时间t的权值;

t001:判断优先级堆栈中是否存在存储节点,若是,则执行t002,若否,则执行t004;

t002:取出优先级堆栈栈顶节点并比较栈顶节点优先级是否大于当前节点优先级;若是,则执行t003;若否,则执行t004;

t003:将栈顶节点放入缓冲堆栈内并执行t002;

t004:将当前节点备份并将备份地址放入优先级堆栈栈顶;

t005:若缓冲堆栈不为空,则将缓冲堆栈内节点依次放入优先级堆栈栈顶。

请参阅图3所示,基于分布式系统的数据恢复系统,包括:

存储冗余度计算模块,用于计算节点在分布式系统中存储冗余度p;还用于传递存储冗余度p至优先级判断模块;

节点监听模块,用于监听节点热活动间隔时间t并判断节点是否为失效节点;还用于传递热活动间隔时间t至优先级判断模块;

优先级判断模块,用于接收节点监听模块传递的热活动间隔时间t以及存储冗余度计算模块传递的存储冗余度p,还用于计算节点的优先级;

堆栈管理模块,用于根据优先级将节点备份地址存放在优先级堆栈中,还用于控制节点在缓冲栈中的存取;

节点备份模块;用于对节点内数据备份。

值得注意的是,上述系统实施例中,所包括的各个单元只是按照功能逻辑进行划分的,但并不局限于上述的划分,只要能够实现相应的功能即可;另外,各功能单元的具体名称也只是为了便于相互区分,并不用于限制本发明的保护范围。

另外,本领域普通技术人员可以理解实现上述各实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。

以上公开的本发明优选实施例只是用于帮助阐述本发明。优选实施例并没有详尽叙述所有的细节,也不限制该发明仅为所述的具体实施方式。显然,根据本说明书的内容,可作很多的修改和变化。本说明书选取并具体描述这些实施例,是为了更好地解释本发明的原理和实际应用,从而使所属技术领域技术人员能很好地理解和利用本发明。本发明仅受权利要求书及其全部范围和等效物的限制。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1