本发明涉及云存储环境下数据对象的副本一致性更新方法,设计了一种动态云存储环境下混合型副本一致性更新策略。
背景技术:
副本技术是云存储研究的重要分支,其基本思想是对存储的每个数据对象进行复制,形成副本,然后通过分布式技术将这些数据副本分配到不同的存储节点上。副本技术可以有效的均衡云存储系统的负载,降低数据的访问延迟。
在云存储中,副本数量越多,数据存取越快捷,系统的性能越优越。虽然多副本可以有效改善系统的性能,但是当其中的一个副本产生更新时,为保证云存储系统的可用性,其他相同副本也需要进行更新;因此,副本数量越多,导致副本一致性的难度越高。
为缓解一致性困难的问题,学者们已经提出了大量的副本一致性策略。根据副本更新消息传播方式的不同,现有的一致性策略可以分为基于架构和基于传染路由两种类型。其中,基于构架的副本更新策略假设系统的构架是稳定的,系统中存在一个专门的服务节点记录节点上的副本;副本通过该服务节点可以快速的获取并定位更新的数据对象,从而及时的完成副本更新。而基于传染路由的更新方式则采用传染路由方式,在副本更新后将更新消息传递到目标节点。根据副本获取更新方式的不同,现有的策略可以分成主动更新和被动更新两种类型。其中,被动式更新是指节点上的副本被动的等待接收更新消息。在该方式下,云存储系统多采用集中式方式对副本进行更新;其一般采用“心跳”机制,将更新消息进行传播。
传统的副本一致性策略更多侧重于副本被动的接收更新消息,较少的关注副本主动接收更新,在一定环境下(如动态云存储环境)会导致副本无法及时的得到更新,影响云存储的可用性。在动态云存储中,由于存储节点可以频繁的加入、离开云存储,节点失效也成为了一种常态行为。节点频繁的变动导致了副本也被频繁的创建、移除和迁移;这增加了基于构架一致性策略中服务节点的服务负担(严重的会导致单点失效的风险),影响了副本及时获取更新的效率。而基于传染路由的更新方式本身就是一种概率更新,并不能保证所有副本在更新消息的生命周期内完成更新,尤其是在动态云存储环境下。为了弥补被动更新方式的缺陷,一些学者提出了主动式获取更新的方式。他们通常根据节点上副本的查询率和更新率,由节点采用自适应的方式确定副本是否接收更新。主动方式可以有效改善动态环境下副本更新的概率,但是在这些策略中,主动轮询的频率并不能得到很好的控制,导致轮询频率与实际更新频率不能很好的契合,影响了云存储的可用性。
因此,有必要设计一种混合型副本一致性更新策略,以应对动态云存储环境下采用传染路由进行一致性更新时副本不能得到及时的更新的问题。
技术实现要素:
本发明针对现有技术不足,提出一种动态云存储环境下混合型自适应副本一致性更新方法,有效解决了动态云存储环境下采用传染路由进行一致性更新时副本不能得到及时的更新的问题。
当动态云存储环境下采用传染路由进行副本更新时,采用本发明副本一致性更新方案,使副本可以得到及时的更新并提高副本成功更新的概率。
本发明采用的技术方案:
本发明主要由节点分类和副本节点采用自适应主动轮询更新两部分组成。首先,本发明将动态云存储下的节点分成稳定型节点和变动型节点两种类型。稳定型节点采用传染路由进行被动式更新;而变动型节点则由节点采用自适应的主动式方式进行更新。
节点分类:首先,本发明根据影响副本一致性更新概率的因素绘制了节点风险图,然后根据节点在风险图上的位置将节点分成稳定型节点和变动型节点。对于稳定型的节点,副本则采用传染路由更新方式进行更新,而对于变动型节点,则由节点采用分散自适应的方式进行主动更新。
节点自适应轮询更新:本发明采用线性增加倍数减小和时间预测的方式确定节点主动轮询的时间和频率。当副本没有产生更新时,轮询的时间间隔逐渐的线性增加,降低轮询的频率;当副本更新比较频繁时,则轮询的时间间隔成倍的进行减小,增加轮询的频率。轮询时间则兼顾副本的查询时间和实际的轮询时间,通过评估预测时间和副本查询时间确定下一次的轮询时间。
发明有益效果:
1、本发明动态云存储环境下混合型自适应副本一致性更新方法,提出了一个动态云存储环境下混合式获取副本一致性更新的方案,有效的弥补了动态云存储环境下因节点变动导致副本更新概率较低的问题。
2、本发明动态云存储环境下混合型自适应副本一致性更新方法,根据影响副本一致性更新的多种因素,绘制了一个节点风险图,可以从图中直观的观测到节点的风险系数;通过对节点进行分类,不同类型的节点则采用不同的副本更新方式,提高了副本更新的及时高效。
3、本发明动态云存储环境下混合型自适应副本一致性更新方法,对于变动型节点,提出了一种减少轮询次数的自适应主动副本更新方法。该方法可以根据副本的更新情况进行自适应的轮询。
附图说明
图1为本发明混合型自适应副本一致性更新方法总体流程图;
图2为本发明混合型自适应副本一致性更新方法节点分类流程图;
图3为本发明混合型自适应副本一致性更新方法自适应主动轮询更新方式流程图。
具体实施方式
下面通过具体实施方式,结合附图对本发明技术方案做进一步的详细描述。
实施例1
参见图1,本发明动态云存储环境下混合型自适应副本一致性更新方法,包括如下步骤:
1)首先获取影响副本一致性的节点属性;
2)根据影响副本一致性更新概率的因素绘制节点风险图;
3)根据节点在风险图上的位置即风险值对节点进行分类:分成稳定型节点和变动型节点;
4)如是稳定型节点,副本则采用传染路由方式进行被动更新;
5)而对于变动型节点,则由节点采用自适应主动轮询的方式进行主动更新。
实施例2
本实施例动态云存储环境下混合型自适应副本一致性更新方法,与实施例1不同的是:变动型节点采用自适应主动轮询的方式进行主动更新的过程如下:
采用线性增加倍数减小和时间预测的方式确定节点主动轮询的时间和频率;
当副本没有产生更新时,轮询的时间间隔逐渐的线性增加,降低轮询的频率;
当副本更新比较频繁时,则轮询的时间间隔成倍的进行减小,增加轮询的频率;
轮序时间兼顾副本的查询时间;根据副本的实际查询时间序列,对下一时刻的查询时间进行预测,当预测的时间早于线性增加倍数减小的时间,则下次主动轮询的时间为预测时间,否则为线性增加倍数减小的时间。
实施例3
参见图1、图2,本实施例的动态云存储环境下混合型自适应副本一致性更新方法,和实施例1或实施例2的不同之处在于:对节点进行分类的过程,具体步骤如下:
(1)、云存储周期性的获取影响副本一直性更新的节点属性,这些因素包括:
节点负载
(2)将这些属性分成节点服务能力属性和节点服务意愿属性两类;其中,节点服务能力因素包括
构建节点
节点
服务意愿分量表示为:
(3)构建虚拟节点
虚拟节点
虚拟节点
(4)将
(5)在集合
其中:
其中:
则在
(6)利用下述公式求
(7)由步骤(6)得到
(8)根据每个节点的二维分量,将节点绘制到风险图上,将节点坐标与原点的距离称为风险系数,则任一节点
(9)利用下属公式得到风险图中所有节点的平均风险值:
(10)定义一个可以自适应调整的参数
对于稳定型节点,采用传染路由完成副本一致性更新;而对于变动型节点,则由节点采用自适应的方式主动轮询服务节点。
本发明涉及到的一些参数:
假设云存储节点的数量为n,表示为
1、节点负载
其中,
2、节点度
3、平均响应时间
其中
4、请求响应率
其中,
5、节点变动频率
6、节点接收更新的频率
7、最小更新时间间隔
8、副本服务时间序列
9、下一时刻轮询的时间
实施例4
参见图1-图3,本实施例的动态云存储环境下混合型自适应副本一致性更新方法,与实施例3不同的是:节点根据自身的属性判断是否属于变动型节点,如是变动型节点,则由节点采用自适应的方式主动轮询服务节点,向服务节点发起轮询进行主动更新,其步骤为:
(1)节点向服务器主动发起轮询,根据回应信息,判定数据是否已经更新;
若副本没有更新,则相应的增加下次轮询的时间间隔,降低轮询的次数;
(2)如果副本已经更新,则说明当前轮询的频率较低,则缩短下次轮询的时间间隔;
(3)根据副本向外提供服务的时间序列采用平滑指数预测算法预测下一次的服务时间
其中,
(4)如果线性增加倍数减小算法得到的下次轮询时间
采用线性增加一个常数的方式降低轮询的频率:
若当前轮询时间间隔为
其中,在初始状态下,
采用倍数减小的方式提高轮询的频率:
若当前的时间间隔为
本发明动态云存储环境下混合式获取副本一致性更新的方案,有效的弥补了动态云存储环境下因节点变动导致副本更新概率较低的问题。根据影响副本一致性更新的多种因素,绘制了一个节点风险图,可以从图中直观的观测到节点的风险系数;通过对节点进行分类,不同类型的节点则采用不同的副本更新方式。对于变动型节点,提出了一种减少轮询次数的自适应主动副本更新方法。该方法可以根据副本的更新情况进行自适应的轮询。
以上各实施例仅用于说明本发明,不应当构成对本发明专利要求保护范围的限定。本领域技术人员在结合现有技术的情况下,无需进行创造性劳动即可对本发明的实施情况进行其他修改或者采用本领域惯用技术手段进行置换,只要不脱离本发明技术方案的精神和范围,均应涵盖在本发明的权利要求范围当中。
1.一种动态云存储环境下混合型自适应副本一致性更新方法,包括如下步骤:
1)首先获取影响副本一致性的节点属性;
2)根据影响副本一致性更新概率的因素绘制节点风险图;
3)根据节点在风险图上的位置即风险值对节点进行分类:分成稳定型节点和变动型节点;
4)如是稳定型节点,副本则采用传染路由方式进行被动更新;
5)而对于变动型节点,则由节点采用自适应主动轮询的方式进行主动更新。
2.根据权利要求1所述的动态云存储环境下混合型自适应副本一致性更新方法,其特征在于:变动型节点采用自适应主动轮询的方式进行主动更新的过程如下:
采用线性增加倍数减小和时间预测的方式确定节点主动轮询的时间和频率;
当副本没有产生更新时,轮询的时间间隔逐渐的线性增加,降低轮询的频率;
当副本更新比较频繁时,则轮询的时间间隔成倍的进行减小,增加轮询的频率;
轮序时间兼顾副本的查询时间;根据副本的实际查询时间序列,对下一时刻的查询时间进行预测,当预测的时间早于线性增加倍数减小的时间,则下次主动轮询的时间为预测时间,否则为线性增加倍数减小的时间。
3.根据权利要求1或2所述的动态云存储环境下混合型自适应副本一致性更新方法,其特征在于:对节点进行分类的过程,包括步骤如下:
(1)、云存储周期性的获取影响副本一直性更新的节点属性,这些因素包括:
节点负载
(2)将这些属性分成节点服务能力属性和节点服务意愿属性两类;其中,节点服务能力因素包括
构建节点
节点
服务意愿分量表示为:
(3)构建虚拟节点
虚拟节点
虚拟节点
(4)将
(5)在集合
其中:
其中:
则在
(6)利用下述公式求
(7)由步骤(6)得到
(8)根据每个节点的二维分量,将节点绘制到风险图上,将节点坐标与原点的距离称为风险系数,则任一节点
(9)利用下属公式得到风险图中所有节点的平均风险值:
(10)定义一个可以自适应调整的参数
对于稳定型节点,采用传染路由完成副本一致性更新;而对于变动型节点,则由节点采用自适应的方式主动轮询服务节点。
4.根据权利要求3所述的动态云存储环境下混合型自适应副本一致性更新方法,其特征在于:节点根据自身的属性判断是否属于变动型节点,如是变动型节点,则由节点采用自适应的方式主动轮询服务节点,向服务节点发起轮询进行主动更新,其步骤为:
(1)节点向服务器主动发起轮询,根据回应信息,判定数据是否已经更新;
若副本没有更新,则相应的增加下次轮询的时间间隔,降低轮询的次数;
(2)如果副本已经更新,则说明当前轮询的频率较低,则缩短下次轮询的时间间隔;
(3)根据副本向外提供服务的时间序列采用平滑指数预测算法预测下一次的服务时间
其中,
(4)如果线性增加倍数减小算法得到的下次轮询时间
5.根据权利要求4所述的动态云存储环境下混合型自适应副本一致性更新方法,其特征在于:采用线性增加一个常数的方式降低轮询的频率:
若当前轮询时间间隔为
其中,在初始状态下,
6.根据权利要求4或5所述的动态云存储环境下混合型自适应副本一致性更新方法,其特征在于:采用倍数减小的方式提高轮询的频率:
若当前的时间间隔为