B 树是一个家族,感觉 B+Tree 对于喜欢使用 MySQL 的我来说是最常听说的数据库索引结构之一了。但是我从来没有从头到尾自己实现过一个 B+Tree,像类似的数据结构,感觉不真正自己写一次就很难领悟其中的细节。

 

 

B+ Tree 的定义

 

 

 

当我们在组织这个树型结构的时候,我们是以节点的形式组织的。节点分为 inner node 和 leaf node。node 也是以 key/value pairs 组织的。

比如我在使用 MySQL 的时候我对一个表的某个字段建立了索引,那么这个二级索引字段应该就是这个 key 。 那么他的 value 应该是对应表的主键 id。叶子节点里面就存储了所有你需要的东西,你不再需要再去别处查找。但是对于 postgreSQL,当你 traverse 到叶子节点的时候,

 

 

 

Reference:

https://15445.courses.cs.cmu.edu/fall2022/slides/08-trees.pdf

https://dichchankinh.com/~galles/visualization/BPlusTree.html

 

原文地址:http://www.cnblogs.com/piperck/p/16889203.html

1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长! 2. 分享目的仅供大家学习和交流,请务用于商业用途! 3. 如果你也有好源码或者教程,可以到用户中心发布,分享有积分奖励和额外收入! 4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解! 5. 如有链接无法下载、失效或广告,请联系管理员处理! 6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需! 7. 如遇到加密压缩包,默认解压密码为"gltf",如遇到无法解压的请联系管理员! 8. 因为资源和程序源码均为可复制品,所以不支持任何理由的退款兑现,请斟酌后支付下载 声明:如果标题没有注明"已测试"或者"测试可用"等字样的资源源码均未经过站长测试.特别注意没有标注的源码不保证任何可用性