CN101645888B - 一种基于访问频度变长逻辑分段的数据分发方法 - Google Patents

一种基于访问频度变长逻辑分段的数据分发方法 Download PDF

Info

Publication number
CN101645888B
CN101645888B CN2009100851258A CN200910085125A CN101645888B CN 101645888 B CN101645888 B CN 101645888B CN 2009100851258 A CN2009100851258 A CN 2009100851258A CN 200910085125 A CN200910085125 A CN 200910085125A CN 101645888 B CN101645888 B CN 101645888B
Authority
CN
China
Prior art keywords
file
seg
data
duplicate rating
small data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN2009100851258A
Other languages
English (en)
Other versions
CN101645888A (zh
Inventor
王劲林
尤佳莉
王玲芳
李廷屹
邓浩江
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhengzhou Xinrand Network Technology Co ltd
Original Assignee
Institute of Acoustics CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Acoustics CAS filed Critical Institute of Acoustics CAS
Priority to CN2009100851258A priority Critical patent/CN101645888B/zh
Publication of CN101645888A publication Critical patent/CN101645888A/zh
Application granted granted Critical
Publication of CN101645888B publication Critical patent/CN101645888B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种基于访问频度变长逻辑分段的数据分发方法。该方法通过将文件切分成细粒度的单元,基于用户在文件不同时间段上访问频度的差异,为文件生成变长逻辑分段,然后针对不同逻辑分段分别进行基于流行度的多副本放置,并为每个逻辑分段生成多级索引项,同时根据文件的副本等级调整更新文件的索引项,使数据在CDN网络中的副本分布更加符合用户的实际访问习惯。同时,细粒度的文件切片,使得用户访问行为的统计更加精准,便于对用户访问频度特征基于时间变化的更新,并应用于内容分发的副本生成上,使***中的数据分布自适应的随时间进行调整。另外,多级索引的应用,有效降低了数据副本等级调整时所带来的通信开销,提高了***性能。

Description

一种基于访问频度变长逻辑分段的数据分发方法
技术领域
本发明涉及信息技术领域,特别涉及到由分布式节点组成的内容分发网络技术领域中的一种基于访问频度变长逻辑分段的数据分发方法。
背景技术
CDN的全称是Content Distribution/Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,即提供透明服务的中间层,将网站的内容发布到最接近用户的网络边缘,从而使得用户能以最快的速度,从最接近用户的地方获得所需的信息,一方面,CDN可以减少延迟,解决Internet网络拥挤的状况;另一方面,还可以有效实现多种宽带应用,提高响应速度和服务质量,特别是在流媒体传输方面有着其它技术无可比拟的优势。
在CDN***中,为了使用户快速取得数据,一个文件常常被生成多个副本,散落的放置于网络中,如何对这些副本进行合理地生成和维护,则是CDN***的重要问题。P2P技术由于其自组织、负载均衡等优势,受到了广泛的关注,也越来越多的被应用在CDN的研究中。
结构化P2P网络又称为分布式哈希表(简称DHT),每个节点都通过某种哈希算法得到一个唯一ID值,所有应用实体(如对象,object),也通过该哈希算法得到一个与节点ID在同一个数值空间的object ID值,同样也有一个唯一的放置节点,该放置节点就叫做该object的主节点,称作home node。对object的查找即对其homenode的定位,该过程是通过查询发起节点的邻居作为中介而逐跳进行的,直至找到目标或查找失败为止。在DHT网络中,假设哈希值的ID空间为M个bit位的数值,从左到右,所有匹配大于等于1位数值的ID,称为在一个等级,即一个level。一个object如果其level为1,表示平均路由1跳就可以找到该object,因此,需要在1跳覆盖之外的所有节点上对该数据进行备份。以Pastry为路由协议为例,object的level为1则对应了一个楔形的节点区域,表示该区域的所有节点需要对object进行备份,若网络中节点总数为N,基数为b,则需要N/b1个节点进行备份。因此,如何计算每个object所对应的level值,则是副本放置的关键。
文件的流行度是指一个文件受用户的欢迎程度,以用户对该文件的访问频率来表示,比如被用户点播、下载的次数等。在CDN***中,常常根据每个文件流行度的不同来计算文件的副本等级数,生成对应副本并放置于网络中。实际中,大多数的CDN主要对流媒体等大文件进行分发和存储,而通过视频点播等***的研究发现,尽管一个文件被点播了多次,但用户在整个文件时间域上的访问行为并不是平均分布的。以电影为例,用户对文件的开头和结尾更感兴趣,而常常跳过对中间内容的观看。同时,长度短的影片和长的影片也具有不同的访问规律。文件的时域访问特征可以通过长时间积累的历史访问数据进行拟合得到,许多数值分析的相关方法可以应用,这里不再赘述。因此,根据流行度信息对大文件整体进行副本生成,并不符合用户的实际需求,同时,会导致大量存储空间被不常被访问的数据占用。
综上所述,可知一个文件在时间域上的用户行为特征,对正确放置数据副本有着重要意义。
发明内容
为了解决上述问题,本发明的目的在于提供一种基于访问频度变长逻辑分段的数据分发方法。该方法将文件切分成细粒度的单元,基于用户在文件不同时间段上访问频度的差异,为文件生成变长逻辑分段,针对不同逻辑分段分别进行基于流行度(即频度)的多副本放置,使数据在CDN网络中的副本分布更加符合用户的实际访问习惯。同时,细粒度的文件切片,使得用户访问行为的统计更加精准,便于对用户访问频度特征基于时间变化的更新,并应用于内容分发的副本生成上,使***中的数据分布自适应的随时间进行调整。另外,多级索引的应用,有效降低了数据副本等级调整时所带来的通信开销,提高了***性能。
为达到上述目的,本发明提供一种基于访问频度变长逻辑分段的数据分发方法,对于分发到网络中的文件f,分发过程如下:
1)将文件切分为大小相等的小数据块(Unit Block,简称ub)序列{ub1,ub2,...,ubn}。
2)根据文件的初始用户访问概率分布函数g(x),计算得到每一个ubi的访问概率积分,整个序列的概率为{q1,q2,...,qn};
这里,文件的初始用户访问概率分布函数g(x),可通过如下方法得到:
i)通过最小二乘法等数值分析方法对历史访问数据进行曲线拟合,从而得到g(x)函数中的参数值,g(x)常用的分布有:
a)g(x)呈指数分布,如f(x)=aebx,其中a,b为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1;
b)g(x)呈两个指数分布的线性叠加,如f(x)=aebx+cedx,其中a,b,c,d为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1;
ii)根据经验,预先设定的分布模型。
3)为了加快优化速度,减少待估计参数,通过合并算法,将ub序列进行合并,生成数据片段(segmentation)序列{seg1,seg2,...,segk},并为每个数据片段seg计算流行度和副本等级,其副本等级计算方法如下:
假设D(l)是用于计算副本数目的函数,其只跟副本等级和总节点数相关,则目标方程可以写为:
F ′ ( L , Λ ) = arg min { Σ m = 1 M Σ k = 1 k m s u c m , k D ( l m , k ) + λ ( Σ m = 1 M Σ k = 1 k m c m , k q m , k l m , k - A ) }
其中,km为第m个文件的数据片段数目;cm,k为第m个文件中第k个seg中所包含的ub数目;lm,k为第m个文件中第k个seg所对应的副本等级数,这里,通过数值分析中的线性规划算法,来估计该lm,k的值;qm,k为第m个文件中第k个seg对应的用户访问概率;A为预设的平均延迟;
这里,将ub序列合并时所采用的ub合并算法,可以有采用以下的任意一种方式:
i)预先设置切分概率和x,从文件头开始,对ub的概率值进行累加,当达到大于等于x时,则切分为seg_1;从下一个ub开始重新累积概率,相同的方法,得到seg_2,以此类推,直至将文件中切分成seg序列为止;
ii)根据应用的不同,人工或者通过程序设定每个seg中ub的数目。
另外,用于计算副本数目的函数D(l),不同DHT协议都有其自己的计算方法,即,每个不同的DHT结构都可计算各自的函数D(l),比如在Pastry中D(l)=N/bl,其中,N为网络中的节点总数,b为Pastry的基数,l为副本等级;在Chord中,D(l)=N/2l。该函数D(l)可以根据应用所采用的DHT协议而分析得到。具体方法可参见相应的DHT协议,这里不再赘述。
4)根据所述步骤3)中的计算结果,得到所有seg的副本等级数,也对应了所有ub的副本等级,然后对文件的所有ub根据其等级在CDN网络中进行放置,
在放置时,假设ub的副本等级为L,首先计算ub的ID号,根据DHT路由算法找到当前ub的主节点;将ub以及对应副本等级等相关信息下载到主节点;通过主节点的路由表找到与主节点的ID匹配L位的所有节点,将ub复制到这些节点上。
5)为每个seg生成其一级索引项,包括:每个ub的大小、seg中ub的起始和结尾序号、seg中所有ub的ID列表以及更新时间等信息,并根据seg的副本等级将一级索引项分布在CDN网络中。
6)通过整个文件的流行度信息,计算整个文件若不进行切分时对应的副本等级lall
7)对每个文件生成二级索引项列表,包括:seg的ID列表、seg的开始和结尾ub序号以及每个ub大小等等,以文件名的哈希值作为键值,并通过整个文件的副本等级lall对二级索引项进行放置,放置方法与步骤4)中的方法相同。
8)文件放置完成后,以T为周期观测用户对文件不同ub上访问频度的变化,重新计算seg逻辑分块中的ub数目和首尾序号、访问流行度、副本等级,并根据新的副本等级调整ub的副本数目,同时更新文件的一级和二级索引项(其中,T的值可以根据实际应用进行选择,比如1天,1周等等),该过程步骤如下:
a)每个ub的主节点home node都保存一个表征用户访问频率的计数器;
b)通过某个管理节点定期收集ub的home node中所存储的用户访问信息;
c)管理节点通过数据副本放置方法重新计算每个ub的流行度,并根据步骤3)重新切分,得到新的seg序列以及副本等级信息;
这里,文件的流行度为:
pop _ New = Σ i = 1 n ac _ c ur i + α Σ t = 1 T - 1 Σ i = 1 n ac _ old t , i
数据块ub的流行度为:
ubPo p i _ New = ac _ cur i + α Σ t = 1 T - 1 ac _ ol d t , i
其中,ac_curi为当前周期内第i个ub的访问次数;ac_oldt,i为第t个周期中,第i块的访问次数;α为历史访问数据的加权系数,且0≤α≤1;
d)根据c)中的计算结果,调整对应ub的副本数目和放置位置,同时,重新生成seg一级索引项和文件二级索引项,删除旧的索引项,放置新索引。
另外,在上述步骤4)和步骤7)中,定义计算seg和ub对应ID的方法时,需要满足如下条件:两种ID生成方法所生成的ID位数相同,在同一个数值空间内,同时保证ID值不会冲突。例如,可以采用如下的计算方法:
Seg_ID=Hash(file name)+seg序号(从1开始排列)+seg中起始ub序号+seg中结尾ub序号;
Ub_ID=Hash(file name)+0...0(位数与seg序号的位数相同)+ub序号+ub序号。
另外,在上述步骤3)和步骤6)中的副本等级计算中,副本等级可以通过下述任何一个方法得到:
i)在一定延迟或者带宽占用的条件下,通过全局最优化或者局部优化的方法计算得到网络中所有文件的副本等级;
ii)预先设定的副本等级。
本发明的在CDN中基于访问频度变长逻辑分段的数据分发方法的有益效果在于:通过细粒度的副本生成和放置,使CDN中的数据分布更加符合用户实际需要。同时,随着时间的推移,用户历史访问信息可以有效的体现出文件流行趋势的变化。通过历史信息的自学习,调整用户访问行为特征,并自动更新对应数据的副本生成过程,使***在无监督的情况下、低耗地调整内容分布,改善用户体验。并且将流行度,即用户访问频度信息更精准的应用在副本生成上,使内容在CDN中的分布更加符合用户需要。针对媒体文件的特点,有效减少了存储空间的占用,提高了***的服务能力。自适应的调整和计算可以无需人工干预的完成副本更新,同时,多级索引减少了大数据块的变动,有效降低了网络中的通信代价。
附图说明
图1是本发明的基于访问频度变长逻辑分段的数据分发方法中的文件变长逻辑分段示意图。
图2是本发明的基于访问频度变长逻辑分段的数据分发方法的流程图。
图3是利用本发明的基于访问频度变长逻辑分段的数据分发方法的基于P2P的二层分发网络结构示意图。
具体实施方式
下面结合附图和具体实施例对本发明的基于访问频度变长逻辑分段的数据分发方法进行详细的说明。
本发明提出一种基于访问频度变长逻辑分段的数据分发方法。该方法将文件切分成细粒度的单元,基于用户在文件不同时间段上访问频度的差异,为文件生成变长逻辑分段,针对不同逻辑分段分别进行基于流行度(即频度)的多副本放置,使数据在CDN网络中的副本分布更加符合用户的实际访问习惯。同时,细粒度的文件切片,使得用户访问行为的统计更加精准,便于对用户访问频度特征基于时间变化的更新,并应用于内容分发的副本生成上,使***中的数据分布自适应的随时间进行调整。另外,多级索引的应用,有效降低了数据副本等级调整时所带来的通信开销,提高了***性能。
图1是本发明的基于访问频度变长逻辑分段的数据分发方法中的文件变长逻辑分段示意图。图2是本发明的基于访问频度变长逻辑分段的数据分发方法的流程图。如图1和图2所示,本发明的基于访问频度变长逻辑分段的数据分发方法,对于分发到网络中的文件f,其分发过程如下:
1)将文件切分为大小相等的小数据块(Unit Block,简称ub)序列{ub1,ub2,...,ubn}。
2)根据文件的初始用户访问概率分布函数g(x),可以计算得到每一个ubi的访问概率积分,整个序列的概率为{q1,q2,...,qn}。
这里,文件的初始用户访问概率分布函数g(x),可通过如下方法得到:
i)通过最小二乘法等数值分析方法对历史访问数据进行曲线拟合,从而得到g(x)函数中的参数值,g(x)常用的分布有:
a)g(x)呈指数分布,如f(x)=aebx,其中a,b为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1;
b)g(x)呈两个指数分布的线性叠加,如f(x)=aebx+cedx,其中a,b,c,d为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1。
ii)根据经验,预先设定的分布模型。
3)为了加快优化速度,减少待估计参数,通过合并算法,将ub序列进行合并,生成数据片段(segmentation)序列{seg1,seg2,...,segk},每个seg包含多个ub,seg内ub的流行度相同,即有相同的副本等级,见图1所示。
假设D(l)是计算副本数目的函数,其只跟副本等级和总节点数相关,则目标方程可以写为:
F ′ ( L , Λ ) = arg min { Σ m = 1 M Σ k = 1 k m s u c m , k D ( l m , k ) + λ ( Σ m = 1 M Σ k = 1 k m c m , k q m , k l m , k - A ) }
其中,km为第m个文件的segmentation的数目,cm,k和lm,k分别为为第m个文件中第k个seg中所包含的ub数目和对应的副本等级数,qm,k为第m个文件中第k个seg对应的用户访问概率,A为预设的平均延迟。这里,通过数值分析中的线性规划算法,估计lm,k的值。
这里,将ub序列合并时所采用的ub合并算法,可以采用以下的任意一种方式:
i)预先设置切分概率和x,从文件头开始,对ub的概率值进行累加,当达到大于等于x时,则切分为seg_1;从下一个ub开始重新累积概率,相同的方法,得到seg_2,以此类推,直至将文件中切分成seg序列为止;
ii)根据应用的不同,人工或者通过程序设定每个seg中ub的数目。
另外,D(l)是一个只跟副本等级和总节点数相关的计算副本数目的函数,不同DHT协议都有其自己的计算方法,即,每个不同的DHT结构都可计算各自的D(l),比如在Pastry中D(l)=N/bl,其中,N为网络中的节点总数,b为Pastry的基数,l为副本等级;在Chord中,D(l)=N/2l。该函数可以根据应用所采用的DHT协议而分析得到。具体方法可参见相应的DHT协议,这里不再赘述。
4)根据步骤3)中的计算结果,可以得到所有seg的副本等级数,也对应了所有ub的副本等级。对文件的所有ub根据其等级在CDN网络中进行放置。在放置时,假设ub的副本等级为L,则首先计算ub的ID号,根据DHT路由算法找到当前ub的主节点;将ub以及对应副本等级等相关信息下载到主节点;通过主节点的路由表找到与主节点的ID匹配L位的所有节点,将ub复制到这些节点上;
5)为每个seg生成其一级索引项,其中包括每个ub的大小,seg中ub的起始和结尾序号,seg中所有ub的ID列表,更新时间等信息,并根据seg的副本等级将一级索引项分布在CDN网络中;
6)通过整个文件的流行度信息,计算整个文件若不进行切分时对应的副本等级lall
7)对每个文件生成二级索引项列表,其中包括seg的ID列表,seg的开始和结尾ub序号,每个ub大小等等,以文件名的哈希值作为键值,并通过整个文件的副本等级lall对二级索引项进行放置,放置方法与步骤4)中的方法相同。
8)文件放置完成后,以T为周期观测用户对文件不同ub上访问频度的变化,重新计算seg逻辑分块中的ub数目和首尾序号、访问流行度、副本等级,并根据新的副本等级调整ub的副本数目,同时更新文件的一级和二级索引项(其中,T的值可以根据实际应用进行选择,比如1天,1周等等)该过程步骤如下:
a)每个ub的主节点home node都保存一个表征用户访问频率的计数器;
b)通过某个管理节点定期收集ub的主节点home node中所存储的用户访问信息;
c)管理节点通过数据副本放置方法重新计算每个ub的流行度,并根据步骤3)重新切分,得到新的seg序列以及副本等级信息;
d)根据c)中的计算结果,调整对应ub的副本数目和放置位置,同时,重新生成seg一级索引项和文件二级索引项,删除旧的索引项,放置新索引。
另外,在上述步骤4)和7)中,seg和ub的ID计算方法需要满足如下条件:两种ID生成方法所生成的ID位数相同,在同一个数值空间内,同时保证ID值不会冲突。例如,可以采用下面的计算方法:
Seg_ID=Hash(file name)+seg序号(从1开始排列)+seg中起始ub序号+seg中结尾ub序号;
Ub_ID=Hash(file name)+0...0(位数与seg序号的位数相同)+ub序号+ub序号。
另外,在上述步骤3)和步骤6)中的副本等级计算中,副本等级可以通过下述任何一个方法得到:
i)在一定延迟或者带宽占用的条件下,通过全局最优化或者局部优化的方法计算得到网络中所有文件的副本等级;
ii)预先设定的副本等级。
实施例
下面结合具体实施例对本发明的CDN网络中的基于访问频度变长逻辑分段的数据分发方法做进一步阐述。
图3是利用本发明的基于访问频度变长逻辑分段的数据分发方法的基于P2P的二层分发网络结构示意图。如图3所示,假设有一个基于P2P的二层内容分发网络结构,包括管理层和数据备份层,这里,管理层主要负责所有文件的索引维护以及内容分发所需要的切片、计算过程;数据备份曾则负责对数据副本的备份。在这里,管理层由相互全连通的服务器组成,数据备份曾通过Pastry路由协议对所有节点进行组织,同时,每个节点至少连接一个管理层中的管理节点(LM)。
对10000个文件进行分发,假设文件f的大小为2G,流行度为2500,在10000个文件中排名20,文件分发步骤如下:
1)以1M为基本ub大小对文件进行切片,得到ub序列{ub1,ub2,...,ub2000};
2)假设初始时用户访问特征分布函数为:f(x)=e-2x,计算文件所有ub的概率积分值;
3)设每个seg的概率和为0.1,ub1开始,从左至右,累加ub的概率值,当累加到概率和大于等于0.1的ub时,则生成一个seg,新seg的起始点从下一个ub开始,直至整个文件切分结束,得到seg序列{seg1,seg2,...,seg10},例如:各个seg的起始和结尾ub分别为{(1,3),(4,10),...,(1350,2000)};
4)根据seg的访问概率和文件流行度,计算每个seg对应的流行度值,并通过某种副本等级计算方法进行计算,生成文件不同seg的副本等级序列{l1,l2,...,l10};
5)根据seg的等级数,对seg中包含的所有ub在CDN中生成对应副本;
6)为每个seg生成索引信息,包含:文件名;seg序号;seg中包含的ub序号列表;ub大小以及seg等级;
7)通过DHT路由算法,将seg的索引信息通过seg_ID放置在网络中,同时,根据seg的副本等级生成多个副本;
8)为文件生成索引,索引中包含:
文件名;seg的ID序列;seg的副本等级序列;每个seg的起始和结尾ub的序号;ub的大小以及最近更新时间,
9)通过整个文件的流行度计算副本等级数;
10)通过DHT路由算法,将文件的索引信息放置在网络中,同时,根据文件的副本等级生成多个副本;
11)当以48小时作为更新周期,当前为第T个周期,则用户行为特征更新过程如下:
a)管理节点LM收集各ub的home node中所存储的用户访问信息,比如:该ub在最近一个更新周期内的被访问次数;该ub在以前的T-1个更新周期内的被访问次数;
b)管理节点LM重新计算文件相关部分的流行度,比如:
文件的流行度为: pop _ New = Σ i = 1 n ac _ c ur i + α Σ t = 1 T - 1 Σ i = 1 n ac _ old t , i
其中,ac_curi为当前周期内第i个ub的访问次数;ac_oldt,i为第t个周期中,第i块的访问次数;α为历史访问数据的加权系数,且0≤α≤1。
同样,数据块ub的流行度为:
ubPo p i _ New = ac _ cur i + α Σ t = 1 T - 1 ac _ ol d t , i
因此,根据ub新的流行度信息,重新切分文件的seg序列。
c)根据步骤b)中新切分的结果,对副本等级有变化的ub进行更新,重新生成seg的一级索引和文件二级索引,删除原来的索引信息,并根据流行度更新后计算得到的seg和文件副本等级进行放置。
说明文档中的其他现有技术内容针对本专业领域内的普通技术人员,均可进行技术实现,这里不再赘述。

Claims (7)

1.一种基于访问频度变长逻辑分段的数据分发方法,对于分发到网络中的文件f,分发过程如下:
1)将文件f切分为大小相等的小数据块ub序列{ub1,ub2,...,ubn};
2)根据文件f的初始用户访问概率分布函数g(x),计算得到每一个ubi的访问概率积分,整个序列的概率为{q1,q2,...,qn};
3)通过合并算法,将ub序列进行合并,生成数据片段序列{seg1,seg2,...,segk},并为每个数据片段seg计算流行度和副本等级,其中,副本等级计算方法如下:
假设D(l)是计算副本数目的函数,其只跟副本等级和总节点数相关,则目标方程为:
F ′ ( L , Λ ) = arg min { Σ m = 1 M Σ k = 1 k m s u c m , k D ( l m , k ) + λ ( Σ m = 1 M Σ k = 1 k m c m , k q m , k l m , k - A ) }
其中,L为副本等级,km为第m个文件的数据片段数目;cm,k为第m个文件中第k个数据片段seg中所包含的小数据块ub数目;lm,k为第m个文件中第k个数据片段seg所对应的副本等级数,通过数值分析中的线性规划算法估计该lm,k的值;qm,k为第m个文件中第k个数据片段seg对应的用户访问概率,A为预设的平均延迟;
4)根据所述步骤3)中的计算结果,得到所有数据片段seg的副本等级数,同时对应了所有小数据块ub的副本等级,然后对文件的所有小数据块ub根据其等级在CDN网络中进行放置,
在放置时,假设ub的副本等级为L,首先计算小数据块ub的ID号,根据分布式哈希表DHT路由算法找到当前ub的主节点;然后将小数据块ub以及对应副本等级相关信息下载到主节点;再通过主节点的路由表找到与主节点的ID匹配L位的所有节点,将ub复制到这些节点上;
5)为每个数据片段seg生成其一级索引项,其信息包括:每个小数据块ub的大小、数据片段seg中小数据块ub的起始和结尾序号、数据片段seg中所有小数据块ub的ID列表以及更新时间,并根据数据片段seg的副本等级将一级索引项分布在CDN网络中;
6)通过整个文件的流行度信息,计算整个文件若不进行切分时对应的副本等级lall
7)对每个文件生成二级索引项列表,包括:数据片段seg的ID列表、数据片段seg的开始和结尾ub序号以及每个小数据块ub大小,以文件名的哈希值作为键值,并通过整个文件的副本等级lall对二级索引项进行放置,放置方法与所述步骤4)中的方法相同;
8)文件放置完成后,以根据实际应用而选择的时间T为周期观测用户对文件不同小数据块ub上访问频度的变化,重新计算数据片段seg逻辑分块中的小数据块ub数目和首尾序号、访问流行度以及副本等级,并根据新的副本等级调整小数据块ub的副本数目,同时更新文件的一级和二级索引项。
2.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤2)中的文件f的初始用户访问概率分布函数g(x),通过如下任意一个方法得到:
i)通过包括最小二乘法的数值分析方法对历史访问数据进行曲线拟合,得到g(x)函数中的参数值,这里,g(x)的分布形式包括:
a)g(x)呈指数分布,f(x)=aebx
其中:a,b为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1;
b)g(x)呈两个指数分布的线性叠加,f(x)=aebx+cedx
其中:a,b,c,d为待估参数,x表示样本观测时间在整个文件时长上的位置比例,0≤x≤1;
ii)根据经验,预先设定的分布模型。
3.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤3)中,将小数据块ub序列进行合并时所使用的合并算法,采用以下的任意一种方式:
i)预先设置切分概率和x,从文件头开始,对小数据块ub的概率值进行累加,当达到大于等于x时,则切分为数据片段seg_1;然后从下一个ub开始重新累积概率,相同的方法,得到数据片段seg_2,以此类推,直至将文件切分成数据片段seg序列为止;
ii)根据应用的不同,人工或者通过程序设定每个数据片段seg中小数据块ub的数目。
4.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤3)中,D(l)为用于计算副本数目的函数,根据应用所采用的DHT协议分析得到,其只跟副本等级和总节点数相关,不同分布式哈希表DHT协议都有其自己的计算方法,每个不同的分布式哈希表DHT结构计算各自的D(l),
在Pastry中D(l)=N/bl
在Chord中,D(l)=N/2l
其中,N为网络中的节点总数,b为Pastry的基数,l为副本等级。
5.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤4)和步骤7)中,所述数据片段seg和小数据块ub的ID计算方法满足如下条件:两种ID生成方法所生成的ID位数相同,在同一个数值空间内,同时保证ID值不会冲突,
包括如下计算方法:
Seg ID=Hash(file name)+seg序号+seg中起始ub序号+seg中结尾ub序号,其中,seg序号从1开始排列;
Ub ID=Hash(file name)+与seg序号的位数相同的零0...0+ub序号+ub序号。
6.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤3)和步骤6)中的副本等级计算中,副本等级通过下述任何一个方法得到:
i)在一定延迟或者带宽占用的条件下,通过全局最优化或者局部优化的方法计算得到网络中所有文件的副本等级;
ii)预先设定的副本等级。
7.如权利要求1所述的基于访问频度变长逻辑分段的数据分发方法,其特征在于,所述步骤8)进一步包括如下过程:
a)每个小数据块ub的主节点home node都保存一个表征用户访问频率的计数器;
b)通过某个管理节点定期收集小数据块ub的主节点home node中所存储的用户访问信息;
c)管理节点通过数据副本放置方法重新计算每个小数据块ub的流行度,并根据所述步骤3)重新切分,得到新的数据片段seg序列以及副本等级信息,
这里,文件的流行度为:
pop _ New = Σ i = 1 n ac _ cur i + α Σ t = 1 T - 1 Σ i = 1 n ac _ old t , i
小数据块ub的流行度为:
ubPop i _ New = ac _ cur i + α Σ t = 1 T - 1 ac _ old t , i
其中,T为周期,ac_curi为当前周期内第i个ub的访问次数;ac_oldt,i为第t个周期中,第i块的访问次数;α为历史访问数据的加权系数,且0≤α≤1;
d)根据上述步骤c)中的计算结果,调整对应小数据块ub的副本数目和放置位置,同时,重新生成数据片段seg一级索引项和文件二级索引项,删除旧的索引项,放置新索引。
CN2009100851258A 2009-06-02 2009-06-02 一种基于访问频度变长逻辑分段的数据分发方法 Active CN101645888B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100851258A CN101645888B (zh) 2009-06-02 2009-06-02 一种基于访问频度变长逻辑分段的数据分发方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100851258A CN101645888B (zh) 2009-06-02 2009-06-02 一种基于访问频度变长逻辑分段的数据分发方法

Publications (2)

Publication Number Publication Date
CN101645888A CN101645888A (zh) 2010-02-10
CN101645888B true CN101645888B (zh) 2012-11-21

Family

ID=41657608

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100851258A Active CN101645888B (zh) 2009-06-02 2009-06-02 一种基于访问频度变长逻辑分段的数据分发方法

Country Status (1)

Country Link
CN (1) CN101645888B (zh)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101968796B (zh) * 2010-09-09 2012-04-18 北京邮电大学 一种双向并发执行的文件级可变长数据分块方法
CN101997874B (zh) * 2010-10-29 2014-04-16 山东大学 一种用于农村流媒体远程教育***的缓存设计方法
CN102164309B (zh) * 2011-03-21 2014-09-03 华为技术有限公司 节目的处理方法和***以及装置
CN102868542B (zh) * 2011-07-04 2018-02-16 中兴通讯股份有限公司 一种服务分发网络中服务质量的控制方法及***
CN103067525B (zh) * 2013-01-18 2015-11-25 广东工业大学 一种基于特征码的云存储数据备份方法
CN104426915B (zh) * 2013-08-19 2017-12-01 中国电信股份有限公司 实现在线音乐分段下载的方法、服务器和***
CN104158902B (zh) * 2014-08-27 2017-09-19 浙江宇视科技有限公司 一种基于请求数的Hbase数据块分配方法及装置
TWI534619B (zh) * 2015-09-11 2016-05-21 慧榮科技股份有限公司 動態邏輯分段方法以及使用該方法的裝置
CN106096002B (zh) * 2016-06-22 2019-04-26 武汉大学 基于访问流行度和相关性的空间数据副本控制方法及***
CN106502789A (zh) * 2016-10-12 2017-03-15 阔地教育科技有限公司 一种资源访问方法及装置
CN108418858B (zh) * 2018-01-23 2021-07-02 南京邮电大学 一种面向Geo-distributed云存储的数据副本放置方法
CN108647523B (zh) * 2018-04-28 2020-01-17 华南理工大学 一种基于区块链的电子证明***及存证、文件恢复方法
CN109639758B (zh) * 2018-10-31 2020-05-12 中国科学院信息工程研究所 内容中心网络中用户行为隐私的保护方法及装置
CN110149529B (zh) * 2018-11-01 2021-05-28 腾讯科技(深圳)有限公司 媒体信息的处理方法、服务器及存储介质
CN112905531B (zh) * 2019-11-19 2022-11-15 千寻位置网络有限公司 Gnss离线数据的存储方法、***及调用方法
CN111158903B (zh) * 2019-12-12 2023-04-25 中国科学院深圳先进技术研究院 一种动态数据的规划方法
CN113868242B (zh) * 2020-06-30 2023-03-21 金篆信科有限责任公司 全局索引的分布策略调整方法、计算机设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127898A (zh) * 2007-09-20 2008-02-20 Ut斯达康通讯有限公司 流媒体***及其多媒体文件的切片存储和流服务方法

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101127898A (zh) * 2007-09-20 2008-02-20 Ut斯达康通讯有限公司 流媒体***及其多媒体文件的切片存储和流服务方法

Also Published As

Publication number Publication date
CN101645888A (zh) 2010-02-10

Similar Documents

Publication Publication Date Title
CN101645888B (zh) 一种基于访问频度变长逻辑分段的数据分发方法
JP5343075B2 (ja) オンラインキャッシュ及びピア・ツー・ピア転送を用いるメディアストリーミング
US9836407B2 (en) Method for using service level objectives to dynamically allocate cache resources among competing workloads
CN103106153B (zh) 基于访问密度的web缓存替换方法
Hasslinger et al. Performance evaluation for new web caching strategies combining LRU with score based object selection
CN101645919B (zh) 一种基于流行度的副本等级计算方法及其副本放置方法
CN101645921B (zh) 一种片段流行度的更新方法
Napoli et al. Improving files availability for bittorrent using a diffusion model
US9729603B2 (en) Content stream delivery using variable cache replacement granularity
Guan et al. Push or pull? toward optimal content delivery using cloud storage
CN111314862B (zh) 雾无线接入网中深度强化学习下带有推荐的缓存方法
US9829954B2 (en) Autonomous distributed cache allocation control system
Wauters et al. Replica placement in ring based content delivery networks
US6502175B1 (en) Method and apparatus for locating caches in a network to optimize performance
Loukopoulos et al. Continuous replica placement schemes in distributed systems
Sen et al. Discrete particle swarm optimization algorithms for two variants of the static data segment location problem
Xu et al. Exploring the policy selection of the P2P VoD system: A simulation-based research
Thouin et al. Video-on-demand equipment allocation
Yue et al. Analyzing the performance and fairness of BitTorrent-like networks using a general fluid model
CN101645923B (zh) 一种文件切片方法及所切片段流行度的计算方法
EP2813046A1 (en) System and method for determining a reputation mechanism
Sani et al. On the trajectory of video quality transition in HTTP adaptive video streaming
Han et al. Strategic bundling for content availability and fast distribution in BitTorrent
Kim et al. Real-time data replication strategy for data grids
Zuo et al. An evolutionary game-based mechanism for routing P2P network flow among selfish peers

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
TR01 Transfer of patent right

Effective date of registration: 20210729

Address after: Room 1601, 16th floor, East Tower, Ximei building, No. 6, Changchun Road, high tech Industrial Development Zone, Zhengzhou, Henan 450001

Patentee after: Zhengzhou xinrand Network Technology Co.,Ltd.

Address before: 100190 Institute of acoustics, Chinese Academy of Sciences, No. 21 West Fourth Ring Road, Haidian District, Beijing

Patentee before: INSTITUTE OF ACOUSTICS, CHINESE ACADEMY OF SCIENCES

TR01 Transfer of patent right