[发明专利]一种多控存储系统全局共享缓存的方法及装置有效
申请号: | 201711346546.2 | 申请日: | 2017-12-15 |
公开(公告)号: | CN107992270B | 公开(公告)日: | 2021-02-26 |
发明(设计)人: | 龚飞 | 申请(专利权)人: | 杭州宏杉科技股份有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 北京博思佳知识产权代理有限公司 11415 | 代理人: | 林祥 |
地址: | 310053 浙江省杭州市滨江*** | 国省代码: | 浙江;33 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 存储系统 全局 共享 缓存 方法 装置 | ||
1.一种多控存储系统全局共享缓存的方法,所述方法应用于多控存储系统的第一存储节点,所述多控存储系统包括多个存储节点,各存储节点的缓存都被划分为全局共享缓存和本地缓存,其特征在于,包括:
当预定义的加锁条件被触发时,对本地的全局共享缓存表加锁,并向其它存储节点发送加锁指令,以由各存储节点基于所述加锁指令为自身的全局共享缓存表加锁;其中,所述预定义的加锁条件为定时器超时的加锁条件或者本地缓存中的数据容量达到预设的第一容量阈值的加锁条件;
将本地缓存中的数据分配至各存储节点的全局共享缓存;
基于数据的分配结果更新本地的所述全局共享缓存表,并将所述全局共享缓存表的更新内容发送至其它存储节点,以由其它存储节点基于所述更新内容更新自身的所述全局共享缓存表并在更新完成后返回更新完成报文;
对本地的全局共享缓存表解锁,并在接收其它存储节点返回的所述更新完成报文后,向其它存储节点发送解锁指令,以由其它存储节点基于所述解锁指令为自身的全局共享缓存表解锁。
2.根据权利要求1所述的方法,其特征在于,所述全局共享缓存表包括若干条全局共享缓存表项,每条全局共享缓存表项包括LUN标识、数据起始地址、数据长度、存储节点标识和全局缓存地址的映射关系;
所述方法还包括:
接收到应用服务器发送的读IO请求;
根据所述读IO请求中携带的LUN标识、数据起始地址和数据长度查找所述全局共享缓存表,确定是否查找到对应的全局共享缓存表项;
如果查找到对应的全局共享缓存表项,基于所述全局共享缓存表项从所述全局共享缓存中获取目标数据,并将所述目标数据返回所述应用服务器;其中,所述目标数据为所述读IO请求所请求的数据;
如果未查找到对应的全局共享缓存表项,向所述读IO请求中携带的LUN标识对应的实体LUN转发所述读IO请求,以由所述实体LUN返回所述目标数据,并将所述目标数据返回所述应用服务器。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
接收到所述应用服务器发送的写IO请求;
向所述写IO请求中携带的LUN标识对应的实体LUN转发所述写IO请求,以由所述实体LUN处理所述写IO请求并在处理完成后返回写IO响应;
根据所述写IO请求中携带的LUN标识、数据起始地址和数据长度查找所述全局共享缓存表,确定是否查找到对应的全局共享缓存表项;
如果查找到对应的全局共享缓存表项,基于所述全局共享缓存表项更新所述全局共享缓存中的数据,并在接收到实体LUN返回的所述写IO响应后,向所述应用服务器转发所述写IO响应;
如果未查找到对应的全局共享缓存表项,在接收到实体LUN返回的写IO响应后,向所述应用服务器转发所述写IO响应。
4.根据权利要求2或3所述的方法,其特征在于,所述查找所述全局共享缓存表前,还包括:
确定所述全局共享缓存表是否加锁;
如果是,等待预设时长后重新确定所述全局共享缓存表是否加锁;
如果不是,查找所述全局共享缓存表。
5.根据权利要求1所述的方法,其特征在于,所述加锁条件包括:
定时器超时;或者,
本地缓存中的数据量达到预设的第一容量阈值。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当所述多控存储系统的所有存储节点的全局共享缓存中的数据达到预设的第二容量阈值时,根据预设清理策略删除预设大小的数据。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于杭州宏杉科技股份有限公司,未经杭州宏杉科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711346546.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种车辆运输安全检测系统
- 下一篇:一种XRD检测前的样品处理装置