本项目记录了我是如何一步一步实现用于数据库底层的 B+ 树(Java)的
版本 | 插入 | 删除 | 查找 | 修改 | 持久化 | 其他特点见文档 |
---|---|---|---|---|---|---|
V1 | √ | × | √ | × | × | V1版本文档 |
V2 | √ | × | √ | √ | × | V2版本文档 |
V3 | √ | √ | √ | √ | × | V3版本文档 |
V4 | √ | √ | √ | √ | √ | V4版本文档 |
- V1: 简化版本, 节点页使用数组实现, 只实现了部分功能, 实现方式也比较简单, 主要用于理论验证
- V2: 过渡版本, 节点页使用链表实现, 实现上只考虑了唯一索引, 还不具备通用性
- V3: 完备版本, 实现了几乎全部功能, 实现方式上考虑了各种场景, 对细节进行了优化
- V4: 数据库定制版本, 实现将数据持久化, 实现上考虑了数据库的各种场景
- Java
- SDK: 1.8
- 语言级别: 8
- Maven: 3.8.1
- 基于此项目实现的关系型数据库: EasySQL