[发明专利]KV存储设备的地址转换及其加速器在审
申请号: | 202110814983.2 | 申请日: | 2018-03-16 |
公开(公告)号: | CN113505085A | 公开(公告)日: | 2021-10-15 |
发明(设计)人: | 孙唐;沈飞;古进;谈笑 | 申请(专利权)人: | 北京忆芯科技有限公司 |
主分类号: | G06F12/02 | 分类号: | G06F12/02;G06F12/0866;G06F12/1009 |
代理公司: | 北京卓特专利代理事务所(普通合伙) 11572 | 代理人: | 段旺 |
地址: | 100094 北京市海*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | kv 存储 设备 地址 转换 及其 加速器 | ||
1.一种KV存储设备,其特征在于,包括排序表、NVM存储介质和遍历B+树的加速器,排序表包括多个条目,每个条目记录了键与同所述键对应的值地址列表,排序表被组织为B+树结构;
B+树的加速器通过遍历B+树搜索得到同待访问的键所对应的值地址表。
2.如权利要求1所述的KV存储设备,其特征在于,加速器包括数据访问模块、B+树遍历模块与叶节点搜索模块。
3.如权利要求2所述的KV存储设备,其特征在于,数据访问模块用于根据与待访问的键对应的指针从存储器中获取B+树的节点,B+树遍历模块根据待访问的键访问B+树的根节点或中间节点,并确定下一个待遍历的节点,叶节点搜索模块根据待访问的键搜索叶节点,以得到同待访问的键对应的值地址表。
4.如权利要求1-3任一项所述的KV存储设备,其特征在于,为遍历B+树,
向加速器提供B+树的第一节点指针与待访问的第一键,其中第一节点指针指示B+树的第一节点;
B+树遍历模块指示数据访问模块读取B+树的第一节点,数据访问模块读取B+树的第一节点;
数据访问模块将读取的B+树的第一节点提供给B+树遍历模块;
B+树遍历模块比较待访问的第一键与B+树的第一节点的“键-指针”对索引所指示的“键-指针”对的第二键,指示数据访问模块读取B+树的第二节点;
数据访问模块将读取的叶节点提供给叶节点搜索模块。
5.如权利要求4所述的KV存储设备,其特征在于,B+树遍历模块为存储在节点缓存的节点初始化第二索引,使第二索引指向存储在节点缓存的节点中的多个排序的“键-指针”对的第一个;
若第一键大于第二键,且第二索引指示的是当前节点的最后一个“键-指针”对,B+树遍历模块获取第二索引对应的“键-指针”对的第二指针,若第二指针指示叶节点,根据第二指针指示数据访问模块读取第二索引对应的“键-指针”对指示的叶节点。
6.如权利要求4或5所述的KV存储设备,其特征在于,数据访问模块将读取的叶节点提供给叶节点搜索模块;叶节点搜索模块比较待查询的第一键与获取的叶节点中的第三键,并输出具有同第一键相同的第三键的排序表条目或其中的值地址列表。
7.如权利要求5或6所述的KV存储设备,其特征在于,若B+树遍历模块获取第二索引对应的“键-指针”对的第二指针指示的是中间节点,则根据第二指针指示数据访问模块读取第二索引对应的“键-指针”对的第二指针指示的中间节点。
8.如权利要求7所述的KV存储设备,其特征在于,数据访问模块读取中间节点,数据访问模块将读取的中间节点提供给B+树遍历模块,B+树遍历模块在节点缓存中存储所接收的中间节点,B+树遍历模块为新缓存的中间节点初始化第二索引,使之指向节点中的多个排序的“键-指针”对的第一个。
9.如权利要求5-7任一项所述的KV存储设备,其特征在于,若第一键大于第二键,且第二索引指示的不是当前节点的最后一个“键-指针”对,B+树遍历模块更新第二索引以获取当前节点的排序在后的下一个“键-指针”对。
10.如权利要求5-7任一项所述的KV存储设备,其特征在于,若识别出第一键小于第二键,且第二索引指示的不是当前节点的首个“键-指针”对时,将第二索引更新为指示当前“键-指针”对的相邻的前一个“键-指针”对。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京忆芯科技有限公司,未经北京忆芯科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110814983.2/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种卤鸡制作设备及附属的卤鸡制作工艺
- 下一篇:一种猪场养殖用污水处理系统