一种面向云存储系统的数据副本数量确定方法技术方案

技术编号:10334625 阅读:139 留言:0更新日期:2014-08-20 18:53
本发明专利技术提出一种面向云存储系统的数据副本数量确定方法,其方法基于数据流行度与节点热度,以满足服务需求、控制数据副本数量为目标,对数据分类并预测不同数据的数据副本需求数,提前增加数据副本,或及时删除过多的数据副本,本发明专利技术方法包含以下几个环节:分析数据流行度预测模型;预测数据副本变化数;计算节点热度;增加/删除数据副本;迁移数据副本。方法减少数据副本需求数,降低了硬件成本,减轻了系统的数据维护负担,降低了热点问题的发生概率,有效提高了数据副本的利用率。

【技术实现步骤摘要】
一种面向云存储系统的数据副本数量确定方法
本专利技术涉及信息技术类数据管理应用领域,尤其涉及一种面向云存储系统的数据副本数量的确定方法。
技术介绍
云存储是在云计算概念上延伸和发展出来的一个新概念,通过集群应用、网格技术或分布式文件系统等功能,将网络中大量各种不同类型的存储设备通过应用软件集合起来协同工作,共同对外提供数据存储和业务访问功能的系统。云存储通过互联网为多用户提供高性价比的共享存储资源池。用户不需要了解云存储系统的组成,也不需要了解提供存储服务的具体细节,所有设备对于用户均是透明的,任何一个合法用户通过网络都可以连接云存储系统,获得相应的服务。云存储概念一经提出,就得到了产业界及学术界的关注。根据IDC(InternationalDataCorporation,国际数据集团)的数据,2013年云存储服务的增长率超过所有其他类型的云服务。在云存储系统中存储了大量数据及其副本,且数据规模仍在迅速增加,这使得数据副本管理模块是云存储系统中必不可少的组件。高效的数据副本管理方法可以有效地解决系统容错性差、稳定可靠性低以及访问速度慢等问题。目前的数据副本管理方法所要达到的目标包括如何保障系统更高的服务可靠性、数据副本一致性、合理的数据副本数量及均衡的系统负载等问题。其中适当控制数据副本数量尤其必要。数据副本数量过多会造成节点存储资源和网络带宽的浪费,加重系统和网络负担;数量过少则数据的可用性和访问速度得不到保证,容易造成热点问题。合理计算各数据对象所需要的数据副本数量有助于系统的数据副本总数控制。目前的数据副本复制数量的确定一般都采用静态策略,一般都将数据副本数量设置为预先确定好,然后将数据副本存储在若干存储节点上,即通过简单冗余来避免数据访问失效现象的发生,目前的谷歌云平台、Hadoop(一个分布式系统基础架构,由阿帕奇基金会开发)等系统都是将数据副本数量设置为3份,然后将数据副本存储在不同的3个存储节点上。这种数据副本数量的静态确定方法没有考虑数据的访问规律,不能满足不同数据的访问需求,使得系统无法在服务质量和资源开销间取得平衡,造成资源浪费,且难以解决热点问题,增加了不必要的硬件成本。
技术实现思路
为解决上述技术问题,本专利技术提供一种面向云存储系统的数据副本数量确定方法,其采用的技术方案如下:一种面向云存储系统的数据副本数量确定方法,包括如下步骤:步骤一:通过归纳云存储系统中数据访问规律将云存储系统中的数据分为Ⅰ型、Ⅱ型、Ⅲ型、Ⅳ型数据,各类型数据初始建立3份副本,并建立相应的数据流行度模型,计算节点热度;步骤二:新数据到达云存储系统一段时间后,根据数据流行度模型提供的数据流行度变化规律,判断数据的类型,计算出下一时期数据副本需求数与当前数据副本数之差Δri;步骤三:当某一类型的数据Δri大于0时,则增加该数据的副本数;当某一类型的数据Δri小于0时,则减少该数据的副本数;当某一类型的数据Δri等于0时,则对该数据的副本数不作调整。步骤四:设定的节点的热度上限阈值,将节点热度达到或超过上限阈值的节点上的最热的数据副本迁移到热度最低且当前不包含该数据副本的节点上,并在节点热度降低到热度上限阈值以下之前,不在该节点上创建新的数据副本。步骤一中的节点热度hnode计算方法如下:式中,n为该节点存储的总数据副本数,而dj为节点中的第j个数据副本,a(dj)为数据副本dj在上一个时间周期内的访问次数。步骤二中判断数据类型的方法为采用流行度面积与流行度的斜率面积判断当前数据所属数据类型。数据类型的判断如以下步骤:步骤1:计算出当前数据对象流行度面积sp=∫pdt,斜率面积sk=∫kdt;其中p为当前数据对象流行度,sp为当前数据对象流行度面积,t为时间,k为当前数据对象流行度斜率,sk为当前数据对象流行度斜率面积,∫和d为积分运算符号。步骤2:若sp接近于Ⅰ型数据的流行度面积sp1=∫p1dt,其中p1为Ⅰ型数据流行度,sp1为Ⅰ型数据流行度面积,t为时间,由于此时其它类型数据的与流行度面积明显大于Ⅰ型数据,从而可以判断当前数据为Ⅰ型数据,确定该数据对象的数据副本数不用改变,并结束数据类型判断;否则继续步骤3。步骤3:若数据对象流行度斜率面积sk接近于Ⅲ型数据的流行度斜率面积sk3=∫k3dt,其中k3为Ⅲ型数据的流行度斜率,sk3为Ⅲ型数据的流行度斜率面积,t为时间,由于此时Ⅲ型数据的访问增加迅速,即它的流行度斜率面积明显大于其它类型数据,所以该数据对象属于Ⅲ型数据,结束数据类型判断;否则继续步骤4。步骤4:若sp接近于Ⅱ型数据的流行度面积sp2=∫p2dt,其中p2为Ⅱ型数据流行度,sp2为Ⅱ型数据流行度面积,t为时间,且sk接近于Ⅱ型数据的流行度斜率面积sk2=∫k2dt,其中k2为Ⅱ型数据的流行度斜率,sk2为Ⅱ型数据的流行度斜率面积,t为时间,由于此时Ⅱ型数据与Ⅳ型数据的流行度面积相近但斜率变化明显不同,从而该数据对象属于Ⅱ型数据,结束数据类型判断;否则该数据对象属于Ⅳ型数据,结束数据类型判断。步骤二中的下一时期数据副本需求数与当前数据副本数之差Δri计算方法如下:确定数据对象的类型后,对Ⅱ、Ⅲ、Ⅳ型数据的数据副本预期变化数的计算式如下:式中,Δri为当前类型为i型的数据对象的副本预期变化数,ρi为针对i型数据的可调节因子,Δpi为从此时到预期时刻i型数据的流行度的变化量,pi为当前类型为i型的数据对象的当前流行度,ri为当前类型为i型的数据对象的副本数。步骤三中增加数据副本的方法如下:步骤1:首先找出持有该数据对象数据副本的节点集合S(Nhold),Nhold指持有该数据对象数据副本的节点;步骤2:按节点热度升序排列集合S(Nhold)中所有的节点;步骤3:以序列中热度最小的节点作为Δri份数据副本的创建者,即负责将数据副本复制并传输到系统的其它当前没有该数据副本的Δri个节点上,这Δri个节点是不属于节点集合S(Nhold)的节点中热度hnode最低的那Δri个节点。步骤三中减少数据副本的方法如下:步骤1:首先找出持有该数据对象数据副本的节点集合S(Nhold),Nhold指持有该数据对象数据副本的节点;步骤2:按节点热度降序排列集合S(Nhold)中所有的节点;步骤3:通知序列中的前Δri个节点删除该数据副本。步骤四中迁移数据副本的方法如下:步骤1:节点持续监控本地的数据副本访问情况,若节点A的节点热度hnode处于热度上限阈值以下,则不作任何其它操作,仍继续监控本地的数据副本访问情况;若发现节点A的节点热度hnode已经达到或超过上限阈值,则转到步骤2;步骤2:节点A对本地所有数据副本按a(dj)进行排序,首先找出a(dj)最高的数据副本,然后将持有该相同数据副本的节点集合S(Nhold)中的节点按节点热度升序排列所有的Nhold;步骤3:节点A通知序列中热度最低的节点(设为节点B)来负责复制并传输该数据副本。步骤4:节点B根据获得的通知,在系统中找出不持有该数据对象的数据副本的节点集合中热度最低的节点(设为节点C),节点B将数据副本复制并传输到节点C;步骤5:如果数据副本传输成功,节点B向节点A报告已经将副本迁移成功,然后转到步骤7;如果数据副本传输失败,转到步骤6;步骤6:节点本文档来自技高网
...
一种面向云存储系统的数据副本数量确定方法

【技术保护点】
一种面向云存储系统的数据副本数量确定方法,包括如下步骤:步骤一:通过归纳云存储系统中数据访问规律将云存储系统中的数据分为Ⅰ型、Ⅱ型、Ⅲ型、Ⅳ型数据,各类型数据初始建立3份副本,并建立相应的数据流行度模型,计算节点热度;步骤二:新数据到达云存储系统一段时间后,根据数据流行度模型提供的数据流行度变化规律,判断数据的类型,计算出下一时期数据副本需求数与当前数据副本数之差Δri;步骤三:当某一类型的数据Δri大于0时,则增加该数据的副本数;当某一类型的数据Δri小于0时,则减少该数据的副本数;当某一类型的数据Δri等于0时,则对该数据的副本数不作调整;步骤四:设定的节点的热度上限阈值,将节点热度达到或超过上限阈值的节点上的最热的数据副本迁移到热度最低且当前不包含该数据副本的节点上,并在节点热度降低到热度上限阈值以下之前,不在该节点上创建新的数据副本。

【技术特征摘要】
1.一种面向云存储系统的数据副本数量确定方法,包括如下步骤:步骤一:通过归纳云存储系统中数据访问规律将云存储系统中的数据分为Ⅰ型、Ⅱ型、Ⅲ型、Ⅳ型数据,Ⅰ型数据——数据及其副本被创建和使用一次或几次后,没有被访问,或访问的次数极少,即流行度初始时较低,随后几乎为零;Ⅱ型数据——数据及其副本被创建后,流行度较高,且维持在一个较平稳区域内,波动很少;Ⅲ型数据——数据及其副本被创建后,流行度迅速攀升,并达到峰值,在后续的一段时间内保持高流行度,然后逐渐衰减;Ⅳ型数据——数据及其副本被创建后,流行度较高,但在不同的时段内受访问用户活动状态的影响,流行度总体呈现持续而稳定的波动性变化;各类型数据初始建立3份副本,并建立相应的数据流行度模型,计算节点热度;节点热度hnode计算方法如下:式中,n为该节点存储的总数据副本数,而dj为节点中的第j个数据副本,a(dj)为数据副本dj在上一个时间周期内的访问次数;步骤二:新数据到达云存储系统一段时间后,根据数据流行度模型提供的数据流行度变化规律,判断数据的类型,计算出下一时期数据副本需求数与当前数据副本数之差Δri;步骤三:当某一类型的数据Δri大于0时,则增加该数据的副本数;当某一类型的数据Δri小于0时,则减少该数据的副本数;当某一类型的数据Δri等于0时,则对该数据的副本数不作调整;步骤四:设定的节点的热度上限阈值,将节点热度达到或超过上限阈值的节点上的最热的数据副本迁移到热度最低且当前不包含该数据副本的节点上,并在节点热度降低到热度上限阈值以下之前,不在该节点上创建新的数据副本。2.根据权利要求1所述的一种面向云存储系统的数据副本数量确定方法,其步骤二中判断数据类型的方法为采用流行度面积与流行度的斜率面积判断当前数据所属数据类型,数据类型的判断如以下步骤:步骤1:计算出当前数据对象流行度面积sp=∫pdt,斜率面积sk=∫kdt;其中p为当前数据对象流行度,sp为当前数据对象流行度面积,t为时间,k为当前数据对象流行度斜率,sk为当前数据对象流行度斜率面积,∫和d为积分运算符号;步骤2:若sp接近于Ⅰ型数据的流行度面积sp1=∫p1dt,其中p1为Ⅰ型数据流行度,sp1为Ⅰ型数据流行度面积,t为时间,由于此时其它类型数据的与流行度面积明显大于Ⅰ型数据,从而可以判断当前数据为Ⅰ型数据,确定该数据对象的数据副本数不用改变,并结束数据类型判断;否则继续步骤3;步骤3:若数据对象流行度斜率面积sk接近于Ⅲ型数据的流行度斜率面积sk3=∫k3dt,其中k3为Ⅲ型数据的流行度斜率,sk3为Ⅲ型数据的流行度斜率面积,t为时间,由于此时Ⅲ型数据的访问增加迅速,即它的流行度斜率面积明显大于其它类型数据,所以该数据对象属于Ⅲ型数据,结束数据类型判断;否则继续步骤4;步骤4:若sp接近于Ⅱ型数据的流行度面积sp2=∫p2dt,其中p2为Ⅱ型数据流行度,sp2为Ⅱ型数据流行度面积,t为时间,且sk接近于Ⅱ型数据的流行度斜率面积sk...

【专利技术属性】
技术研发人员:徐小龙邹勤文徐佳邓艳王屹进刘笑笑李永萍涂群
申请(专利权)人:南京邮电大学
类型:发明
国别省市:江苏;32

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1