计算机缓存多用户,面向多用户的SSD缓存算法设计与实现

摘要:

近年来,虚拟化应用场景日益增多,多用户拥有独立逻辑空间、共享后台资源,随着CPU计算资源和网络带宽资源大幅提升,存储资源逐渐成为性能瓶颈。固态盘(SSD)具有高性能、低能耗的优势,存储系统使用SSD作cache,可以提高存储性能。这种混合存储系统,逐渐成为存储领域的研究热点。使用SSD并配合少量RAM作磁盘缓存层,构建缓存存储系统。面对多用户应用场景和系统加速需求,将缓存层逻辑上分为顺序区和随机区,系统相应地包含顺序识别模块和随机热点识别模块。顺序区主要由RAM构成,顺序识别模块用于识别多用户环境下发生随机化的顺序请求,并将预取数据存储到顺序区,从而降低顺序请求在磁盘中发生随机化而带来的性能损失。随机区主要由RAM和SSD共同构成,并在RAM和SSD中分别划分读区和写区。在随机热点识别模块中,定义和用户优先级相关的数据块热度值,优先满足高优先级用户的数据缓存需求,并根据块的热度值和读写属性,识别出随机热点/次热点的读/写数据,根据策略缓存到RAM/SSD的读区/写区;读/写区比例根据选取的读/写区热度阈值的差值,进行动态调整,这样在加速经常访问数据的同时,适度控制了SSD的写操作次数。顺序识别模块和随机热点识别模块构成上下层关系,通过顺序识别模块的过滤以及随机热点识别模块内部的过滤作用,减少了热度统计的元数据量。根据设计方案,对系统做了实现和测试。测试表明本文能够识别来自多用户的顺序请求,小块请求下可以有数倍的提升,大块请求下也能有10~20%的加速作用。对随机请求的处理,大大降低了缓存的污染分配,相比LRU方案有大幅性能提高。

展开

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值