[发明专利]分布式存储系统的缓存方法及设备有效
申请号: | 202010309879.3 | 申请日: | 2020-04-20 |
公开(公告)号: | CN111522509B | 公开(公告)日: | 2023-06-09 |
发明(设计)人: | 王飞平;董昭通 | 申请(专利权)人: | 上海霄云信息科技有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06;G06F12/123 |
代理公司: | 上海智晟知识产权代理事务所(特殊普通合伙) 31313 | 代理人: | 林高锋 |
地址: | 200240 上海市闵行区*** | 国省代码: | 上海;31 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 分布式 存储系统 缓存 方法 设备 | ||
1.一种分布式存储系统的缓存方法,其中,该方法包括:
获取读取文件的请求,基于所述请求中待读取的文件的指引查询缓存设备中是否存有对应的待读取的文件;
若缓存设备中存有对应的待读取的文件,从所述缓存设备中读取所述待读取的文件,并调整LRU索引堆,其中,文件的指引在LRU索引堆中按照所述缓存设备中的文件的最近访问时间进行排序;
若缓存设备中无对应的待读取的文件,基于所述请求中待读取的文件的指引从底层存储系统中读取所述待读取的文件,并将其存入所述缓存设备中,并分别调整LRU索引堆和LFU索引堆,其中,文件的指引在LFU索引堆中按照缓存设备中的文件的访问频率进行排序;
从所述缓存设备中读取所述待读取的文件,并调整LRU索引堆,包括:
查询所述待读取的文件是否在所述LFU索引堆的文件的指引中命中,
若未在所述LFU索引堆中命中,判断所述LFU索引堆的容量是否饱和,
若所述LFU索引堆的容量饱和,将所述LFU索引堆的堆顶的文件的指引所对应的文件从所述缓存设备中移除,并将LFU索引堆的堆顶的文件的指引从所述LFU索引堆中移除,并将该从所述LFU索引堆移除的文件的指引添加入LFU Ghost链表后转到步骤S5;
若所述LFU索引堆的容量未饱和,转到步骤S5;
步骤S5,将所述待读取的文件的指引由LRU索引堆中移除,并将该从LRU索引堆中移除的文件的指引添加入LFU索引堆,并将LFU索引堆中所述待读取的文件的指引的访问频率设置为2;
调整所述LRU索引堆;
从所述缓存设备中读取所述待读取的文件;
基于所述请求中待读取的文件的指引从底层存储系统中读取所述待读取的文件,并将其存入所述缓存设备中,并分别调整LRU索引堆和LFU索引堆,包括:
步骤S9,基于所述请求中待读取的文件的指引从底层存储系统中读取所述待读取的文件,并将其存入所述缓存设备中;
步骤S10,判断所述请求中待读取的文件的指引是否在LFU Ghost链表中命中,其中,所述LFU Ghost链表中存放有从所述LFU索引堆中淘汰的文件的引用;
若在LFU Ghost链表中命中,步骤S11,在所述LFU索引堆增加N个内存单位,同时在所述LRU索引堆对应减少N个内存单位后转到步骤S14,其中,N为正整数,所述LRU索引堆与所述LFU索引堆的内存单位的总和固定;
步骤S14,判断所述LRU索引堆的容量是否饱和,
若所述LRU索引堆的容量饱和,步骤S15,将所述LRU索引堆的堆顶的文件的指引所对应的文件从所述缓存设备中移除,并将LRU索引堆的堆顶的文件的指引从所述LRU索引堆中移除,并将该从所述LRU索引堆移除的文件的指引添加入LRU Ghost链表后转到步骤S16,
若所述LRU索引堆的容量未饱和,转到步骤S16;
步骤S16,将所述待读取的文件的指引加入所述LRU索引堆后转到步骤S17;
步骤S17,调整所述LRU索引堆后转到步骤S18;
步骤S18,调整所述LFU索引堆。
2.根据权利要求1所述的方法,其中,查询所述待读取的文件是否在所述LFU索引堆的文件的指引中命中之后,还包括:
若在所述LFU索引堆中命中,将所述LFU索引堆中所述待读取的文件的指引对应的访问频率加1;
调整所述LFU索引堆;
从所述缓存设备中读取所述待读取的文件。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海霄云信息科技有限公司,未经上海霄云信息科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010309879.3/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种刚性医疗外科照明装置
- 下一篇:一种多功能电子锁及其无人售卖机