1.一种面向Geo-distributed云存储的数据副本放置方法,其特征在于,包括如下步骤:
步骤A.分别获取各个数据中心的存储能力值,以及获取所有数据中心,两两之间的物理距离和网络传输带宽,然后进入步骤B;
步骤B.分别针对各个数据中心内的各个数据块,根据数据块的历史访问次数,获得该数据块本周期的预测访问次数,即分别获得各个数据中心内各个数据块本周期的预测访问次数,然后进入步骤C;
步骤C.根据各个数据中心内各个数据块本周期的预测访问次数,分别获得各个数据块本周期的预测热度,并根据热度值由大至小顺序,针对所有数据块进行排序,按排序将所有数据块划分至Phot集合、Pwarm集合、Pcold集合,且Phot集合、Pwarm集合、Pcold集合分别对应不同的副本系数,然后进入步骤D;
步骤D.根据本周期预测热度由大至小的排序,针对各个数据块排序,并初始化n=1,然后进入步骤E;
步骤E.以第n个数据块所在集合对应的副本系数,作为第n个数据块所对应数据副本的个数kn,并相应生成kn个数据副本,然后进入步骤F;
步骤F.针对按存储能力值由大至小顺序排序的各个数据中心,顺序选择2kn个数据中心,作为各个待放置数据中心,并获得各个待放置数据中心分别与第n个数据块所在数据中心之间、对应第n个数据的数据块副本通信代价,然后根据数据块副本通信代价由小至大的顺序,顺序选择kn个数据中心,作为第n个数据块所对应的各个副本放置数据中心,并进入步骤G;
步骤G.将第n个数据块所对应的kn个数据副本,分别放置于第n个数据块所对应的各个副本放置数据中心,然后分别更新获取各个数据中心的存储能力值,并进入步骤H;
步骤H.判断n是否等于N,是则完成数据副本的放置;否则针对n的值进行加1更新,并返回步骤E;其中,N表示所有数据中心内所有数据块的总数。
2.根据权利要求1所述一种面向Geo-distributed云存储的数据副本放置方法,其特征在于:所述步骤A中,分别针对各个数据中心,按如下公式:HPi=α*IOi+β*BWi+γ*DPi
获取各个数据中心的存储能力值HPi,其中,i={1、…、I},I表示数据中心的总数,HPi表示第i个个数据中心的存储能力值,IOi表示第i个数据中心的磁盘I/O,α表示数据中心磁盘I/O的权重,BWi表示第i个数据中心的带宽,β表示数据中心带宽的权重,DPi表示第i个数据中心的磁盘剩余空间,γ表示数据中心磁盘剩余空间的权重,α+β+γ=1。
3.根据权利要求1所述一种面向Geo-distributed云存储的数据副本放置方法,其特征在于:所述步骤B中,分别针对各个数据中心内的各个数据块,根据数据块的历史访问次数,按如下公式:获得该数据块本周期的预测访问次数,即分别获得各个数据中心内各个数据块本周期的预测访问次数 其中,i={1、…、I},I表示数据中心的总数,ji={1、…、Ji},Ji表示第i个数据中心内数据块的总数, 表示第i个数据中心内第ji个数据块本周期的预测访问次数, 表示第i个数据中心内第ji个数据块前一个周期的访问次数, 表示第i个数据中心内第ji个数据块前两个周期的访问次数,σ表示预设影响因子,且0.5<σ≤1。
4.根据权利要求1所述一种面向Geo-distributed云存储的数据副本放置方法,其特征在于:所述步骤C中,根据各个数据中心内各个数据块本周期的预测访问次数,按如下公式:分别获得各个数据块本周期的预测热度 其中,i'={1、…、I},I表示数据中
心的总数,j′i={1、…、Ji},Ji表示第i个数据中心内数据块的总数, 表示第i个数据中心内第ji个数据块本周期预测热度, 表示第i个数据中心内第ji个数据块本周期的预测访问次数, 表示第i'个数据中心内第j′i个数据块本周期的预测访问次数。
5.根据权利要求1所述一种面向Geo-distributed云存储的数据副本放置方法,其特征在于:所述步骤C中,根据热度值由大至小顺序,针对所有数据块进行排序,将热度值大于或等于预设上热度阈值的数据块划分至Phot集合,将热度值大于预设下热度阈值、且小于预设上热度阈值的数据块划分至Pwarm集合,将热度值小于或等于预设下热度阈值的数据块划分至Pcold集合,Phot集合、Pwarm集合、Pcold集合分别对应不同的副本系数。
6.根据权利要求1所述一种面向Geo-distributed云存储的数据副本放置方法,其特征在于:所述步骤F中,分别针对各个待放置数据中心,按如下公式:获得各个待放置数据中心分别与第n个数据块所在数据中心之间、对应第n个数据的数据块副本通信代价Costnl,其中,l={1、…、L},L表示待放置数据中心的总数,BWnl表示第n个数据块所在数据中心与第l个待放置数据中心之间的带宽,Blocknsize表示第n个数据块的大小,Distnl表示第n个数据块所在数据中心与第l个待放置数据中心之间的物理距离,Costnl表示第l个待放置数据中心与第n个数据块所在数据中心之间、对应第n个数据的数据块副本通信代价。