[发明专利]用于访问集群存储系统中的缓存的方法和装置在审
申请号: | 201980081146.4 | 申请日: | 2019-04-24 |
公开(公告)号: | CN113168293A | 公开(公告)日: | 2021-07-23 |
发明(设计)人: | 万力;陈莉莉;唐洪亮;吴宁 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | G06F3/06 | 分类号: | G06F3/06 |
代理公司: | 暂无信息 | 代理人: | 暂无信息 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 用于 访问 集群 存储系统 中的 缓存 方法 装置 | ||
一种集群存储系统包括多个存储设备,所述多个存储设备中的每一个贡献其内存的一部分以形成所述集群存储系统的全局缓存,所述全局缓存可由所述多个存储设备访问。用于访问所述全局缓存的缓存元数据可以多层结构组织。在一个实施例中,多层结构具有首先包括第一地址阵列的第一层,并且所述第一地址阵列包括指向第二层中的多个第二地址阵列的地址。所述第二层中的每个第二地址阵列包括地址,所述地址中的每一个指向已经缓存在所述全局缓存中的数据。
相关申请案交叉申请
本发明要求2019年1月31日递交的发明名称为“用于访问集群存储系统中的缓存的方法和装置(Method and Apparatus for Accessing Caches in Clustered StorageSystems)”的美国临时申请62/799,557的在先申请优先权,该在先申请的全部内容以引用的方式并入本文本中。
技术领域
本公开大体上涉及计算机系统,并且在特定实施例中涉及一种用于访问集群存储系统中的缓存的系统和方法。
背景技术
集群存储系统通常包括多个存储设备作为集群节点。存储设备中的每一个贡献其内存空间的一部分以形成集群存储系统的所谓的“全局”内存。集群存储系统的全局内存可由每个集群节点访问,并且因此扩展了每个单独集群节点的内存空间。集群存储系统可以例如通过在集群存储系统中增加节点来灵活地扩展全局内存的容量。
发明内容
根据本公开的一个实施例,提供一种方法,其包括由包括多个存储设备的存储集群中的第一存储设备接收读取数据的请求。存储集群具有可由多个存储设备访问的超速缓存内存,并且所述超速缓存内存包括位于相应的多个存储设备中的多个内存。所述方法进一步包括:在接收到请求时定位第一地址阵列,其中第一地址阵列包括一个或多个地址;以及根据请求确定来自第一地址阵列的第一地址。第一地址标识第二地址阵列的内存位置,并且第二地址阵列包括一个或多个内存地址。所述方法还包括:根据请求确定来自第二地址阵列的第二地址,其中第二地址标识已经缓存在超速缓存内存中的数据的内存位置;以及根据第二地址读取来自超速缓存内存的数据。通过使用第一地址阵列和第二地址阵列,所述方法具有更快地确定缓存数据的内存位置的优点,并且因此能够更快地访问缓存数据。另外,存储第一地址阵列和第二地址阵列所需的内存空间较少,所述第一地址阵列和所述第二地址阵列包括用于访问缓存数据的缓存元数据。
在以上实施例中,数据可以被缓存在超速缓存内存的一部分中,所述部分位于第一存储设备和/或不同于第一存储设备的第二存储设备中。可以使用远程直接内存访问(remote direct memory access,RDMA)或直接内存访问(direct memory access,DMA)来读取数据。第一地址阵列和/或第二地址阵列可以存储在存储集群的超速缓存内存中。当使用远程直接内存访问(remote direct memory access,RDMA)时,所述方法仅需要执行三次RDMA访问来访问第一地址阵列、第二地址阵列和缓存数据,因此,访问存储集群的内存以读取缓存数据所需的RDMA操作较少。
上述方法可以包括:在确定第一地址阵列不包括第一地址时,由第一存储设备确定数据尚未缓存在存储集群的超速缓存内存中。上述方法还可以包括:在确定第二地址阵列不包括第二地址时,由第一存储设备确定数据尚未缓存在存储集群的超速缓存内存中。因此,所述方法具有基于第一地址阵列和第二地址阵列更快地确定数据是否缓存在超速缓存内存中的优点。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201980081146.4/2.html,转载请声明来源钻瓜专利网。