[发明专利]一种用于替换缓存模块中数据的方法及装置无效
申请号: | 201210453459.8 | 申请日: | 2012-11-13 |
公开(公告)号: | CN102999444A | 公开(公告)日: | 2013-03-27 |
发明(设计)人: | 李明君 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F12/12 | 分类号: | G06F12/12 |
代理公司: | 北京同立钧成知识产权代理有限公司 11205 | 代理人: | 刘芳 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 用于 替换 缓存 模块 数据 方法 装置 | ||
技术领域
本发明涉及云计算中的缓存管理技术,尤其涉及一种用于替换缓存模块中数据的方法及装置。
背景技术
桌面云是将个人计算机桌面环境通过云计算模式从物理机分离出来,成为一种可以对外提供桌面的服务。在使用一种虚拟化体系架构(Xen)虚拟化的桌面云系统中,Xen中的特权域(Domain 0)虚拟出CPU、输入输出(Input and Output,IO)总线、存储等资源,供服务器上的Xen中的虚拟机域(Domain U)使用。目前很多优化软件都在Domain 0中设计了针对Domain U的缓存(Cache)模块。该Cache模块用于缓存各个DomainU所使用镜像的热点数据,以减少各个Domain U使用远端存储上镜像的数据而产生的IO对远端存储每秒输入输出量(Input and Output PerSecond,IOPS)的压力。但是,由于Cache模块的容量有限,相对于每个镜像动辄几十、上百GB容量甚至更多的数据来说容量很少,经常会出现新进入Cache模块的新数据把缓存在Cache模块中的老热点数据替换出去,造成各个Domain U在Cache模块中的命中率降低,严重影响了镜像或虚拟机的性能,从而严重影响了用户体验。
针对各个Domain U在Cache模块中的命中率降低的问题,目前通常采用缓存替换算法对Cache模块中的缓存块进行预备替换排序。预备最先被替换的缓存块在Cache模块的管理模块接收到新数据块或要写入新数据块的信息后,用预备最先被替换的缓存块占用的缓存单元存储新数据块,预备最先被替换的缓存块被替换。如最近最久使用(Least Recently Used,LRU)缓存替换算法对Cache模块内的数据块进行缓存管理。该LRU缓存替换算法能将最近最新访问的数据尽可能地保留在Cache模块中,而将最近最久未访问的数据替换出Cache模块,从而可提高热点数据在Cache模块中的缓存命中率,减少IO响应时间,提高用户体验|。
但是,现有的缓存替换算法将所有对Cache的IO访问行为一视同仁,以相同的策略管理所有的IO访问事件,当多个镜像的进程并发运行时,各个进程竞争使用Cache空间,存储自己使用的数据。但各个进程的访存行为不同,有的进程更倾向于使用已经属于自己的Cache,有的进程则会抢夺其它进程使用的Cache,影响其他进程的执行。当一个或几个镜像相对比较活跃时,它们进行IO访问读取的数据块可能会较大量地占用Cache空间,如根据LRU替换算法的特点,这会导致其它暂时相对不太活跃的镜像在Cache模块中的数据被大量替换出Cache模块。这样,镜像缓存在Cache模块中的数据块在经过一番替换后,留下来的大多是此镜像的热点数据,若某一段时间镜像不活跃时,如果因其它活跃的镜像的频繁IO行为而导致此镜像的热点数据被替换出Cache,则会导致此镜像在缓存中的命中率严重下降,并增加了该镜像IO响应时延,从而降低了镜像的IO处理性能,影响了用户体验。
发明内容
本发明实施例提供一种用于替换缓存模块中数据的方法及装置,用于解决活跃程度不同的镜像或虚拟机的缓存空间不均衡的问题。
本发明实施例的第一个方面是提供一种用于替换缓存模块中数据的方法,包括:
接收新数据块或向缓存模块中写入新数据块的信息;
在缓存模块的空间被占满的情况下,根据配额在所述缓存模块中选择一个缓存块,作为预备替换块;所述缓存块为存储在所述缓存模块中的数据块;
用所述新数据块替换所述预备替换块。
本发明实施例的另一个方面是提供一种用于替换缓存模块中数据的装置,包括:
数据接收模块,用于接收新数据块或向缓存模块中写入新数据块的信息;
替换选择模块,用于在缓存模块的空间被占满的情况下,根据配额在所述缓存模块中选择一个缓存块,作为预备替换块;所述缓存块为存储在所述缓存模块中的数据块;
替换模块,用于用所述新数据块替换所述预备替换块。
本发明实施例提供的用于替换缓存模块中数据的方法及装置,通过根据配额在所述缓存模块中选择一个缓存块,作为预备替换块,限制了镜像或虚拟机在缓存模块中的缓存块的数量,避免了较活跃的镜像或虚拟机较大量地占用Cache模块空间,从而解决了活跃程度不同的镜像或虚拟机的缓存空间不均衡的问题。
附图说明
图1为本发明实施例提供的一种用于替换缓存模块中数据的方法的流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201210453459.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:粒子射线治疗装置
- 下一篇:一种网元拓扑的架构方法和设备