一种内存B+树存储空间优化方法技术

技术编号:40536672 阅读:30 留言:0更新日期:2024-03-01 13:58
本发明专利技术涉及一种内存B+树存储空间优化方法。本方法针对字符串类型的key值,当内存中构建B+树时,B+树的中间节点不存储key值,只存储其孩子节点的地址,需访问中间节点key值时,将最左边叶子节点的第一个key值作为该中间节点记录的key值。本方案可显著减少内存空间的占用,假设B+树的深度为N,树的阶数为M,key的平均长度为L,则可以节省的内存空间为:(M^(N‑1))*L,假设B+树为128阶,树的深度为4,字符串平均长度为256,则可节省空间68719476736,约512MB,随着B+树的规模增大,节省空间越多。

【技术实现步骤摘要】

本专利技术属于内存b+树构建方法,尤其涉及一种内存b+树存储空间优化方法。


技术介绍

1、b+树在内存中的结构如图1所示,每个节点存储了多个key,例如图1中每个节点存储了2个key,实际上非叶子节点的key值等于其孩子节点的第一个key值,所以中间节点存储的key值和其孩子节点的第一个key值相同,因此存在冗余。当key值类型是数字类型时,这种冗余影响不大,但是当key值类型是变长字符串时,则同一个字符串会在内存中存储多次,随着数据的阶数和深度的增加,重复key值占用的内存空间会越来越大,从而造成了严重的内存资源浪费。


技术实现思路

1、为了解决b+树在内存中重复key值存储占用大量内存空间的问题,本专利技术提出了一种新的内存b+树存储空间优化方法。

2、总体而言,本专利技术内存b+树存储空间优化方法的设计构思是当内存中加载b+树时,中间节点不存储key值,查询操作时,将最左边叶子节点的第一个key值作为该中间节点记录的key值。

3、具体地,本专利技术提供了一种内存b+树存储空间优本文档来自技高网...

【技术保护点】

1.一种内存B+树存储空间优化方法,其特征在于,所述方法包括:针对字符串类型的key值,当内存中构建B+树时,B+树的中间节点不存储key值,只存储其孩子节点的地址,需访问中间节点key值时,将最左边叶子节点的第一个key值作为该中间节点记录的key值。

2.根据权利要求1所述的内存B+树存储空间优化方法,其特征在于,当利用所述方法对B+树中的记录进行查询时,包括以下步骤:

3.根据权利要求2所述的内存B+树存储空间优化方法,其特征在于,步骤S11中所述的遍历B+树的第一层,对该层的所有记录根据key值进行二分查找,对于每条记录,获取该条记录key值的方式是:递归...

【技术特征摘要】

1.一种内存b+树存储空间优化方法,其特征在于,所述方法包括:针对字符串类型的key值,当内存中构建b+树时,b+树的中间节点不存储key值,只存储其孩子节点的地址,需访问中间节点key值时,将最左边叶子节点的第一个key值作为该中间节点记录的key值。

2.根据权利要求1所述的内存b+树存储空间优化方法,其特征在于,当利用所述方法对b+树中的记录进行查询时,包括以下步骤:

3.根据权利要求2所述的内存b+树存储空间优化方法,其特征在于,步骤s11中所述的遍历b+树的第一层,对该层的所有记录根据key值进行二分查找,对于每条记录,获取该条记录key值的方式是...

【专利技术属性】
技术研发人员:刘倩
申请(专利权)人:中电云计算技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1