[发明专利]一种融合数据传输和存储的非易失内存缓存方法在审
| 申请号: | 202110670041.1 | 申请日: | 2021-06-17 |
| 公开(公告)号: | CN113312300A | 公开(公告)日: | 2021-08-27 |
| 发明(设计)人: | 康亮;童飞文;马名;马可 | 申请(专利权)人: | 上海天玑科技股份有限公司;上海天玑数据技术有限公司 |
| 主分类号: | G06F15/173 | 分类号: | G06F15/173;G06F3/06 |
| 代理公司: | 上海科盛知识产权代理有限公司 31225 | 代理人: | 翁惠瑜 |
| 地址: | 200131 上海市*** | 国省代码: | 上海;31 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 融合 数据传输 存储 非易失 内存 缓存 方法 | ||
1.一种融合数据传输和存储的非易失内存缓存方法,其特征在于,通过RDMA技术,在网络传输过程中直接访问服务端节点的非易失内存数据,基于数据请求以及缓存资源与硬盘空间的映射关系,执行相应缓存操作。
2.根据权利要求1所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,所述非易失内存对应有一缓存资源池,
所述非易失内存被划分为数据区、元数据区和索引区,所述数据区具有多个用于存储缓存数据的数据块chunk,元数据区为每个chunk创建2个元数据块meta0和meta1,索引区为每个chunk创建一个有效索引index,
一个四元组(index,meta0,meta1,chunk)构成一个缓存数据资源,非易失内存中所有四元组组成所述缓存资源池。
3.根据权利要求2所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,采用原子更新方法进行所述数据区的元数据更新。
4.根据权利要求2所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,所述硬盘空间中,每个硬盘分配有一唯一硬盘ID,根据所述数据块的大小,按照线性映射方式,将每个硬盘划分为若干块逻辑空间,基于逻辑空间偏移构建硬盘Hashtable,每个逻辑空间至少有一个缓存数据块。
5.根据权利要求4所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,所述数据请求至少包含一个三元组(ID,offset,length),基于ID表示硬盘ID,offset表示访问硬盘位置偏移,length表示访问硬盘数据长度,
在接收到所述数据请求后,基于所述硬盘ID及对应的硬盘Hashtable,查询或创建所需的逻辑空间,查询其关联的非易失内存数据块,映射数据到缓存数据块,计算数据请求位于缓存数据块中的内存地址,建立RDMA操作,直接读/写非易失内存数据块上内存地址。
6.根据权利要求5所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,所述数据请求为读请求时,执行以下缓存步骤:
101)判断所需的逻辑空间中是否存在相应的读缓存数据块Rchunk,若是,则执行步骤102),若否,则向所述缓存资源池申请一个缓存数据资源,构建读缓存数据块Rchunk,在对应的元数据中记录硬盘ID、逻辑空间偏移和初始化位图bitmap,执行步骤102);
102)根据Rchunk的元数据中的bitmap,按照线性映射方式计算当前读请求所需缓存区域是否为有效数据;
103)判断当前读请求所需缓存区域在bitmap中是否包含无效数据,若是,则采用分段线性映射数据加载方式加载数据段到Rchunk,若否,则执行步骤104);
104)计算当前读请求在Rchunk中的内存地址,使用RDMA直接读取该内存地址。
7.根据权利要求6所述的融合数据传输和存储的非易失内存缓存方法,其特征在于,所述分段线性映射数据加载方式具体为:
根据读请求的offset和length计算出逻辑空间中所需位图的有效位,结合读缓存数据块中初始化位图,计算所需加载的数据段位图。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于上海天玑科技股份有限公司;上海天玑数据技术有限公司,未经上海天玑科技股份有限公司;上海天玑数据技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110670041.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种餐具组合装置
- 下一篇:一种医疗器械清洗消毒装置





