[发明专利]一种B+树批量顺序删除的方法及系统在审
申请号: | 202210501500.8 | 申请日: | 2022-05-10 |
公开(公告)号: | CN114969033A | 公开(公告)日: | 2022-08-30 |
发明(设计)人: | 杨坚;李淼;汪宏;谭龙根;吴建宏;高杨 | 申请(专利权)人: | 珠海迈科智能科技股份有限公司 |
主分类号: | G06F16/22 | 分类号: | G06F16/22;G06F16/23 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 牛丽霞 |
地址: | 519000 广东省珠*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 批量 顺序 删除 方法 系统 | ||
本发明提供一种B+树批量顺序删除的方法,包括以下步骤:将一个B+树分为多个;定义一个链表,将树根节点指针和树的最大值存入所述链表;为每个B+树定义一个p_tree_head指针,所述p_tree_head指针用于标记顺序删除后的首个有效节点的位置;插入和查询时,先遍历所述链表找到要插入的B+树,依次比较链表中树的最大值,比该值小即查询或插入到该B+树;删除操作,从链表中找到第一个节点的p_tree_head指针,顺序的向后取B+树,然后指针后移;直到该p_tree_head指针对应的键值为该B+树的最大值;删除整个B+树,同时删除掉链表中对应的节点。在批量顺序删除的前提下,本发明可以极大的提升删除操作的效率。
技术领域
本发明涉及软件领域,具体提供一种B+树批量顺序删除的方法及系统。
背景技术
B+树是一种树数据结构,通常用于数据库和操作系统的文件索引系统中。B+树的特点是能够保持数据稳定有序,其插入与删除拥有较稳定的对数时间复杂度。B+树是一种平衡查找树,所有记录节点都是按键值的大小顺序存放在同一层的叶节点中,各叶节点指针进行连接。
现有技术中,B+树删除操作,一般是针对单个键值,并没有对节点或者多个节点进行批量删除的有效方法。有些专利提供了批量删除的操作,是针对磁盘删除效率低,将B+树读取到内存中操作后批量修改磁盘的操作。其缺点是:先在内存中批量删除,然后再批量写入磁盘,因为删除的节点并非连续,所以操作磁盘的时候,还是需要一个一个的操作,时间复杂度还是过高。
场景一:直播场景,主播客户端的采集码率极高,开启了多线程上传到服务器,每个线程上传的节目分片都不一样,每个分片按照时间可以排序。键:时间片;值:节目数据的指针。由于多线程上传到服务器,服务器接收到的分片是杂乱的,这时如果采用B+树排序,并按照时间片的顺序取出键值,最后得到一个顺序的节目流。
场景二:P2P下载场景,客户端从多个P2P节点下载数据,得到的数据为不确定且重复的,就需要排序后输出。这时如果采用B+树排序,然后按照顺序取键值,得到一个顺序的节目流。
当然还有其他很多特定的应用场景,都是需要顺序的删除键值。如果按照当前的方式一个一个节点地删除效率过低。
发明内容
有鉴于背景技术的不足,本发明的主要目的在于提供一种解决B+树批量顺序删除键值的方法,所述删除是按照B+树叶子节点的大小顺序,从而提高删除的效率,尤其是对于频繁的插入删除的场景。且本发明所提供的删除键值方法是适用于按照B+树叶子节点的大小顺序删除的情况。
本发明的目的是由以下技术方案实现的:
一种B+树批量顺序删除的方法,包括以下步骤:
S1、将一个B+树分为多个;
S2、定义一个链表,将树根节点指针和树的最大值存入所述链表;
S3、为每个B+树定义一个p_tree_head指针,所述p_tree_head指针用于标记顺序删除后的首个有效节点的位置;
S4、插入和查询时,先遍历所述链表找到要插入的B+树,依次比较链表中树的最大值,比所述链表中树的最大值小即查询或插入到该B+树;
S5、删除操作时,从链表中找到第一个节点的p_tree_head指针,顺序的向后取B+树,然后指针后移,直到该p_tree_head指针对应的键值为该B+树的最大值;
S6、删除整个B+树,同时删除掉链表中对应的节点。
作为优选,所述S1中,将一个B+树分为多个的方法,是根据键大小分。事实上,根据实际数据和需要分即可,一般是按照一定规律分开。
一种B+树批量顺序删除的系统,其包括:
B+树拆分单元,其用于将一个B+树分为多个;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于珠海迈科智能科技股份有限公司,未经珠海迈科智能科技股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210501500.8/2.html,转载请声明来源钻瓜专利网。