在缓存系统的c项的存储缓存器中管理n项的列表的存储的方法

文档序号:6534387阅读:179来源:国知局
在缓存系统的c项的存储缓存器中管理n项的列表的存储的方法
【专利摘要】一种用于管理包括N项(I[i])的列表(L)的存储的方法,在存储缓存器(M)中有所述列表的C项(I[i]),所述N项在所述列表中根据级别i被排序,所述级别i取决于项(I[i])最后被用户请求的时间,C、N与i是严格的正整数,所述方法根据对项的请求的接收,提供为所述被请求的项计算流行概率f(i),f为加速函数,并根据所述流行概率确定是否将所述被请求的项移动至更高的级别i。
【专利说明】在缓存系统的C项的存储缓存器中管理N项的列表的存储 的方法

【技术领域】
[0001] 本发明涉及用于管理包括N项的列表的存储的方法,在存储缓存器存储所述列表 的C项,例如包括用于存储项的存储缓存器和实现这样的方法的装置的缓存系统。
[0002] 本发明尤其应用于包括用于存储有限数量的项的有限大小的存储缓存器的缓存 系统,所述存储缓存器的内容根据用户的项请求以及所述高速缓存系统应用的替换准则随 着时间而变化。
[0003] 特别地,所述替换准则可为最近最少使用(LRU)替换准则,其依赖于例如项的访 问频率,以便从存储缓存器中移除具有最低存取频率的项,而在所述存储缓存器第一级别 放置具有最1?访问频率的项。

【背景技术】
[0004] 缓存系统被广泛地部署在不同的环境中,例如在存储器控制器或在网页缓存域 中,如 M. RABINOVICH 与 0.SPATSCHECK 的文章 "Web Caching and Replication"(Addison Wesley, 2002第一版,ISBN0-201-61570-3)中所阐释的。这样的缓存系统目前 也在内容分发网络(CDN)中部署,如在A.VAKALI与G.PALLIS (IEEE Internet Computing, 2003)的文章"Content Delivery Networks:Status and Trends" 以及 M.PATHAN 与 R.BUYYA(GRIDS-TR-2007-4,Grid Computing and Distributed Systems Laboratory, University of Melbourne, Australia)的技术报告"A Taxonomy and Survey of Content Delivery Networks" 中进一步详细阐释的。
[0005] 事实上,在这些环境中,通过将频繁访问的项存储在接近请求者的位置,缓存系统 允许将存储能力分散到网络。因此,缓存系统允许实现流量本地化,由于增长的带宽需求以 及对最流行项的请求的冗余,这受到了高度的鼓励。
[0006] 例如,在包括通用web服务器的web网络,web缓存可用于在代理服务器存储网 页,所述代理服务器较该通用服务器更接近进行请求的用户,并因此降低了链路上以及所 述负担过重的通用服务器上的流量负载。这样的web缓存的使用因此为因特网服务提供商 (ISP)、企业网络和用户提供了显著的益处。
[0007] 特别是,为了限制互联网使用的失控增长导致的带宽需求,存在一些将本地应用 层缓存扩展至网络的缓存方案。由Telco?.社区开发的内容分发网络或透明缓存方案是这 样的方案的案例。此外,在这样的系统中,内容缓存允许改善最终用户的响应时间,并减少 流量和服务器负载,并且因此增加了服务可用性。
[0008] 透明缓存方案是直接嵌入到承载网络的网络存储方案,用于给予所述网络的运营 商在内容缓存上以及内容分发加速上的完全控制。此外,透明缓存方案允许为不同应用的 内容使用单一的底层缓存基础设施。文章"An Overview Of Transparent Caching and Its Role In The⑶N Market"阐释了在⑶N网络中透明缓存方案的实施的进一步具体细节, 其在 http://blog.streamingmedia.com/the business of online vi/2010/10/an_ove rview-〇f-transparent-caching. html#more 上可用。
[0009] 此外,内容中心网络(CCN)架构目前正在开发中,其基于命名的内容而不是主机地 址。特别值得注意的是这样的架构允许通过为路由器配备增强的存储器将存储能力嵌入至 网络。CCN 架构进一步在文章"恥七¥(^1^1^似1116(1(:〇1^61^"(¥.从0?5(^,0.1(.5]\^11^1?,工 B. THORNTON, M. F. PLASS,N. H. BRIGGS, R. L. BRAYNARD,C〇NEXT2009, Rome, 2009 年 9 月) 以及 "A Survey of Information-Centric Networking"(B.AHLGREN,C.DANNEVITZ,C. IMBRENDA, D. KUTSCHER, B. 0HLMAN, Dagstuhl Seminar Proceedings, Dagstuhl, Germany, 2 011)中进行了描述,这些在致力于美国国家自然基金(NSF)的已命名数据网络项的网站 http: //www. named-data, net 上。
[0010] 内容缓存方案因此被大量的部署,尤其是用于存储来自不同的应用的内容,这复 杂了他们的管理。事实上,作为多个应用之间共享的存储资源,所述资源的动态管理必须适 于跟踪每个内容的流行变化,所述流行不仅在时间上也从一个应用到另一个应用上变化很 大。
[0011] 为达到这样的目的,最普遍的使用最近最少使用(LRU)替换策略管理存储资源, 因为其相对简单并易于实现,并且在具有偏移流行分布的内容流行模式的情况下,即具有 大的目录并仅有少数非常流行的项的流行模式,效率低下。
[0012] 内容缓存方案中的替换策略已经进行了大量的研究,例如在文章"Multimedia Information Storage and Retrieval: Techniques and Technologies,'(P. K. C. TSE, ISBN 10:1599042258/1-59904-225-8, 2008)的第五部分中所总结的。
[0013] 特别是,大量的该类研究涉及修正LRU类型的策略,特别是对基于内容资源预期 负载的预调的建立,以便动态地针对特定的在请求模式与负载上的假设调节缓存的管理。 然而,这样的修正不能很好地适于管理存储来自许多不同应用的内容并且所述内容受欢迎 的程度和负载随着时间变化的缓存系统。
[0014] 基于LRU策略的其他研究集中于标准LRU替换策略的修正,其带来更好的性能, 但对应的产生更高的复杂性。基于这样的修正机制的示例被称为自适应替换缓存(ARC), 其在文章"Outperforming LRU with an Adaptive Replacement Cache Algorithm"(N. MEGIDD0, D. S. M0DHA,IEEE Computer, Volume 37, pp. 58-65, 2004 年 4 月)中进行了详细的 描述。所述机制提出了通过连续监测并利用工作负荷的近因(recency)与频率的特性处理 流行随时间变化的问题。这样的机制相较基于标准策略的机制对请求模式显示出了较高的 适应,并允许消除工作负载特定(workload-specific)预调的需求。
[0015] 然而,ARC机制使用复杂度为0(C)的算法,C为存储缓存器的大小,而标准的LRU 替换策略的算法的复杂度为0(1)。此外,在低请求速率下难以实现对请求流量的有效监测。
[0016] 在LRU策略的修正上的另一工作提出利用缓存划分来提供差异化服务,以适应以 不同需求为特征的项,如文章 "Optimal Partitioning of Cache Memory"(H.S. STONE, J. TUREK,J.L. WOLF, IEEE transactions of computer 1992, volume 41,issue 9)中所阐释 的。


【发明内容】

[0017] 本发明的目的为通过提出一种方法改进现有技术,所述方法用于管理缓存系统的 存储缓存器中存储的项。所述方法允许基于LRU型策略的缓存动态至稳态的快速收敛,所 述稳态即为全部的最流行项被存储于存储缓存器中的状态,即使流行模式由于在移动环境 中而存在时间上和/或低请求速率上的变化。
[0018] 实际上,收敛至稳态取决于请求速率,因此当所述速率慢时,经验和最优的LRU命 中概率之间可能存在显著的差异,所述LRU命中概率即为在稳态中的存储缓存器中找到流 行项的概率。
[0019] 为达到此目的,并且根据第一方面,本发明涉及一种方法,所述方法用于管理包括 N项的列表的存储,存储缓存器中有所述列表的C项,所述N项在所述列表中根据级别i被 排序,所述级别i取决于所述项最后被用户请求的时间,C、N与i是严格正整数,根据对项 的请求的接收,所述方法提供了为所述被请求的项计算的流行概率f(i),f?为加速函数,并 用来根据所述流行概率确定是否将所述被请求的项移动至更高的级别i。
[0020] 根据第二方面,本发明涉及一种缓存系统,包括用于存储N项列表中的C项的存储 缓存器,所述缓存系统包括用于接收来自用户的对项的请求的装置以及根据级别i排序所 述列表中的项的装置,所述级别i取决于所述项最后被请求的时间,N、C与i是严格的正整 数,该缓存系统进一步包括根据对项的请求的接收,为所述项计算流行概率f(i)的装置,f 为加速函数,所述用于排序的装置适于根据所述流行概率确定是否将所述被请求的项移动 至更高的级别i。

【专利附图】

【附图说明】
[0021] 本发明的其它方面与优点参照附图及下述描述将变得显而易见,其中:
[0022] -图1示意性地表示根据本发明的方法的不同步骤;
[0023] -图2示意性地表示根据图1中的方法的列表中N项的排序。

【具体实施方式】
[0024] 关于这些图,下文描述了一种方法,该方法用于管理包括N项I[i]的列表N的存 储,在存储缓存器M中有所述列表的C项,C与N是严格正整数,并且C对应于所述存储缓 存器的大小,例如包括存储所述列表的C项I [i]的存储缓存器M和实现这样的方法的装置 的缓存系统。
[0025] 所述方法提供了列表L的N项I [i]在所述列表中根据级别i被排序,所述级别i 取决于所述项(I[i])最后被用户请求的时间,i是严格正整数,例如1[1]为级别1的项并 且为最近最多被请求的项,I [i]为级别i的项,1彡i彡N,并且I [N]为级别N的项并且是 最近最少被请求的项。因此,该方法遵循一个最近最少使用型准则。
[0026] 为了这样做,该缓存系统包括用于接收来自用户的对项I[i]的请求的装置,以及 根据上述定义的级别i对列表L中的项I [i]进行排序的装置,使得只有具有1 < i < C的 级别i的项I[i]被存储在存储缓存器中。
[0027] 在标准LRU替换策略中,根据对项的请求的接收,被请求的项I [i]被自动地移动 到列表L的第一级别。此外,如果被请求的项I [i]最初不在存储缓存器M中,即所述项的 级别i大于C,并且如果所述存储缓存器已满,从所述存储缓存器中移除存储缓存器M中的 最近最少被请求的项I[C],而将被请求的项I[i]被移至所述存储缓存器的第一级别。
[0028] 但是,这样的传统的准则下,存储缓存器M到达其稳态之前经历长的过渡阶段,在 稳态中所有最流行的项1[1]均被存储在所述存储缓存器中,当项请求速率低时,所述过渡 阶段就会更长。此外,过渡阶段越长,存储缓存器M的性能退化(degradation)就越大。
[0029] 特别是,允许的仿真结果确认LRU缓存动态的收敛,并且因此存储缓存器M的性能 受到未完成的流行分布模式知识的负面影响,所述模式特别是反映在已经历的流行概率。 例如,命中概率--其反映了项I[i]在存储缓存器M中被发现的概率,或错失概率--其 相反地反映了项I [i]在所述存储缓存器M中未被发现的概率,为流行概率。
[0030] 为了克服这些缺点,所述方法提供,根据对项I[i]的请求的接收,为所述被请求 的项计算流行概率f(i)-f?为加速函数,并根据所述流行概率确定是否将所述被请求的 项移动至更高的级别i
[0031] 特别是,选择加速函数以使得对于所有级别i,流行概率f(i)的值在时间上快速 地收敛至其稳定值,并且显著快于具有LRU动态的缓存系统的流行概率。
[0032] 因此,该方法提出了一种机制,其允许加速缓存系统的缓存动态,所述机制利用对 项I[i]的本地近因的测量来确定所述项移动至列表L前面的概率。
[0033] 为这样做,缓存系统包括用于根据对项I [i]的请求的接收,计算所述项的流行概 率f(i)的装置,用于排序的装置适于根据所述流行概率确定是否将所述被请求的项移动 至更高的级别i。
[0034] 关于图1,所述方法包括第一步骤A,其中缓存系统接收对项I[i]的请求,所述第 一步骤触发步骤B,其中被请求的项I [i]的级别i被校验,这相当于校验所述项存在于存储 缓存器M中(如果级别i满足1 < i < C),或者所述项不存在于所述存储缓存器中(如果 级别i满足i>C)。
[0035] 因此,该方法触发下述步骤K,其中通过缓存系统的用于根据级别i--并且因 此根据被请求的项I[i]存在或不存在于存储缓存器M--进行计算的装置计算流行概率 f⑴。
[0036] 特别地,对于满足1彡i彡C的级别i,即当被请求的项I[i]存在于存储缓存器M 中时,所述方法提供了满足〇 < f(i) < 1的加速函数f,并且所述f相对于级别i减小,如 果被请求的项I[i]流行概率f(i)大于预定值,移动该被请求的项I[i]至更高的级别i。 [0037] 此外,所述方法可提供,如果被请求的项I[i]的流行概率f(i)大于预定值,移动 该被请求的项I[i]至列表L的第一级别。
[0038] 关于图1和图2,在计算步骤K后,所述方法提供了步骤D,其中所述缓存系统的 用于排序的装置将所述流行概率f(i)与预定值进行比较,以确定是否将所述被请求的项 I[i]移动至更高的级别i。如图2所示,当流行概率f(i)大于该预定值时,所述方法触发 移动步骤E,其中所述缓存系统的用于排序的装置将被请求的项I [i](图2中的项I [4])移 动至列表L的第一级别。
[0039] 否则,如果流行概率f (i)低于该预定值,所述方法触发步骤F,其中,所述缓存系 统的用于排序装置使被请求的项I[i]仍在其初始级别i。
[0040] 特别地,对于满足1彡i彡C的级别i,加速函数f可以是:

【权利要求】
1. 一种用于在存储缓存器中管理包括N项(I[i])的列表(L)的存储的方法,所述存储 缓存器(M)存储所述列表的C项,所述N项在所述列表中根据级别i排序,所述级别i取决 于用户对所述N项的最后请求时间,C、N和i是严格的正整数,所述方法其特征在于,在接 收到对项(I[i])的请求后,提供对所述被请求的项计算流行概率f(i),f?为加速函数,并提 供根据所述流行概率确定是否将所述被请求的项移动至更高的级别i。
2. 如权利要求1所述的方法,其特征在于,对于满足1彡i彡C的级别i,加速函数f?满 足0 < f (i) < 1,并且相对于级别i而减小,如果所述被请求的项(I[i])的流行概率f (i) 大于预定值,则所述被请求的项(I[i])被移动至更高的级别i。
3. 如权利要求2所述的方法,其特征在于,如果所述被请求的项(I[i])的流行概率 f(i)大于所述预定值,则所述被请求的项(I[i])被移动至所述列表(L)的第一级别。
4. 如权利要求2或3所述的方法,其特征在于,对于满足1 < i < C的级别i,所述加 速函数:?为€(:0=61口(-入*(;[-1)),其中入为正参数。
5. 如权利要求2或3所述的方法,其特征在于,对于满足1 < i < C的级别i,所述加 速函数f为f (i) = i&A),其中X为正参数。
6. 如权利要求1至5中任一项所述的方法,其特征在于,对于满足i>C的级别i,所述 加速函数f为f(i) = 1,并且所述被请求的项(I[i])被移动至所述列表(L)的第一级别。
7. -种缓存系统,包括用于存储包括N项的列表(L)中的C项(I[i])的存储缓存器 器(M),所述缓存系统包括用于接收来自用户的对项(I[i])的请求的装置以及用于根据级 别i对所述列表中的项(I[i])排序的装置,所述级别i取决于所述项(I[i])的最后被请 求时间,N、C和i是严格的正整数,所述缓存系统进一步包括:用于在接收到对项(I[i])的 请求后计算所述项的流行概率f(i)的装置,f?为加速函数,所述用于排序的装置适于根据 所述流行概率确定是否将所述被请求的项移动至更高的级别i。
8. 如权利要求7所述的缓存系统,其特征在于,对于满足1 < i < C的级别i,加速函 数f?为〇 < f(i) < 1并且相对于级别i而减小,所述用于排序的装置适于在所述被请求的 项(I[i])的流行概率f(i)大于预定值时,将所述被请求的项(I[i])移动至更高的级别i。
9. 如权利要求8所述的缓存系统,其特征在于,所述用于排序的装置适于在所述被请 求的项(I[i])的流行概率f(i)大于所述预定值时,将所述被请求的项I[i]移动至所述列 表(U的第一级别。
10. 如权利要求8或9所述的缓存系统,其特征在于,对于满足1 < i < C的级别i,所 述加速函数:?为€(:0=61口(-入*(;[-1)),其中入为正参数。
11. 如权利要求8或9所述的缓存系统,其特征在于,对于满足1 < i < C的级别i,所 述加速函数f为f(i) =i(^A),其中入为正参数。
12. 如权利要求7至11中任一项所述的缓存系统,其特征在于,对于满足i>C的级别 i,所述加速函数f为f(i) = 1,并且所述用于排序的装置适于将所述被请求的项(I[i])移 动至所述列表(L)的第一级别。
【文档编号】G06F12/12GK104395892SQ201380033918
【公开日】2015年3月4日 申请日期:2013年6月4日 优先权日:2012年6月27日
【发明者】G·卡罗菲利奥, S·博斯特, L·穆斯卡列洛 申请人:阿尔卡特朗讯公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1