[发明专利]一种B+树节点的批量插入和删除方法及装置有效
申请号: | 201811231305.8 | 申请日: | 2018-10-22 |
公开(公告)号: | CN109522271B | 公开(公告)日: | 2021-05-18 |
发明(设计)人: | 刘丹;邹虎;何孝金 | 申请(专利权)人: | 郑州云海信息技术有限公司 |
主分类号: | G06F16/13 | 分类号: | G06F16/13 |
代理公司: | 北京集佳知识产权代理有限公司 11227 | 代理人: | 王宝筠 |
地址: | 450018 河南省郑州市*** | 国省代码: | 河南;41 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 节点 批量 插入 删除 方法 装置 | ||
本申请公开一种B+树节点的批量插入和删除方法及装置,该方法包括:从内存B+树节点中抽取第一key‑value,从磁盘B+树节点中抽取第二key‑value,第一key‑value为内存B+树中最小的key‑value,第二key‑value为磁盘B+树中待插入或删除的最小的key‑value,再按序将内存B+树中的key‑value组成的有序集合与磁盘B+树中第二key‑value后面的所有key‑value组成的有序集合逐个进行比较,再根据比较结果和内存B+树节点中所有key‑value的操作类型,将内存B+树与磁盘B+树合并,生成新的磁盘B+树。可见,本申请是通过从内存B+树和磁盘B+树抽取最小的节点生成新的磁盘B+树,相比较将内存元数据先落盘后再合并的方法,本方法可以提高元数据访问的读性能,避免大量插入和删除节点带来的大量读磁盘操作和删除结点时频繁的变换,节省内存开支。
技术领域
本申请涉及计算机技术领域,具体涉及一种B+树节点的批量插入和删除方法及装置。
背景技术
随着移动互联网、社交网络、电子商务的飞速发展,人类在生产和生活中产生的数据呈现指数型增长,导致数据处理量也与日俱增,同时需要的存储容量也越来越大。
由此,在云计算时代,海量数据的存储需要文件系统的支持,并且,文件系统的元数据性能已成为影响文件访问性能的关键。B+树是为磁盘或其他直接存取辅助设备而设计的一种平衡查找树,通常用于数据库和操作系统的文件系统中。比如NTFS、ReiserFS、NSS、XFS、JFS、ReFS以及BFS等文件系统都在使用B+树作为元数据索引。B+树的特点是能够保持数据稳定有序,其插入与修改拥有较稳定的对数时间复杂度。B+树元素的插入方式为自底向上插入。并且,在需要进行内存和磁盘换入换出时,通常都是需要批量操作来提升元数据性能,但如果按照传统的B+树的插入和删除做法不仅会涉及大量的磁盘访问还会占用大量的内存空间。
因此,如何利用更先进的B+树节点的批量插入和删除方式取代传统的批量插入和删除方式,来避免大量插入和删除节点带来的大量读磁盘操作和删除结点时频繁的变换,以节省内存开支,已成为亟待解决的问题。
发明内容
为解决上述问题,本申请提供了一种B+树节点的批量插入和删除方法及装置,具体技术方案如下:
第一方面,本申请提供了一种B+树节点的批量插入和删除方法,所述方法包括:
从内存B+树节点中抽取第一key-value,以及从磁盘B+树节点中抽取第二key-value,所述第一key-value为所述内存B+树中最小的key-value,所述第二key-value为所述磁盘B+树中待插入或删除的最小的key-value;
从所述第一key-value和所述第二key-value所在位置,按序将所述内存B+树中所有的key-value组成的有序集合与所述磁盘B+树中第二key-value后面的所有待插入或删除的key-value组成的有序集合逐个进行比较,得到比较结果;
根据所述比较结果,以及所述内存B+树节点中所有key-value的操作类型,将所述内存B+树与所述磁盘B+树进行合并,生成一棵新的磁盘B+树,以实现B+树节点的批量插入和删除。
在一种可选的实现方式中,所述从内存B+树节点中抽取第一key-value,以及从磁盘B+树节点中抽取第二key-value,包括:
将所述内存B+树最左侧的叶子节点设置为其游标位置,所述游标位置的游标为0;
从所述内存B+树中游标对应的节点中抽取出所述节点中最小的key-value,作为所述第一key-value;
根据所述内存B+树中游标指向的key-value,查询出所述磁盘B+树中对应的key-value及其所属节点,并将所述key-value的位置设置为所述磁盘B+树的游标位置;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于郑州云海信息技术有限公司,未经郑州云海信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201811231305.8/2.html,转载请声明来源钻瓜专利网。