{"id":15041128,"url":"https://github.com/wwkk-y/bplustree","last_synced_at":"2025-04-14T19:43:49.972Z","repository":{"id":244090704,"uuid":"814236162","full_name":"wwkk-y/BPlusTree","owner":"wwkk-y","description":"数据库应用 B+ 树(Java)","archived":false,"fork":false,"pushed_at":"2024-06-25T06:19:01.000Z","size":308,"stargazers_count":6,"open_issues_count":0,"forks_count":1,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-28T08:04:34.890Z","etag":null,"topics":["bplus-tree","bplustree","data-structures","databases","java"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wwkk-y.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-12T15:46:20.000Z","updated_at":"2025-02-24T12:32:36.000Z","dependencies_parsed_at":"2024-06-25T06:30:25.990Z","dependency_job_id":"5188bbfa-18a1-4cfd-acdf-1d474181456a","html_url":"https://github.com/wwkk-y/BPlusTree","commit_stats":null,"previous_names":["wwkk-y/bplustree"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwkk-y%2FBPlusTree","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwkk-y%2FBPlusTree/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwkk-y%2FBPlusTree/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wwkk-y%2FBPlusTree/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wwkk-y","download_url":"https://codeload.github.com/wwkk-y/BPlusTree/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248949674,"owners_count":21188123,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bplus-tree","bplustree","data-structures","databases","java"],"created_at":"2024-09-24T20:45:38.031Z","updated_at":"2025-04-14T19:43:49.944Z","avatar_url":"https://github.com/wwkk-y.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 数据库应用 B+ 树\n\u003e 本项目记录了我是如何一步一步实现用于数据库底层的 B+ 树(Java)的\n\n## 本项目实现了一些比较常用的 B+ 树, 共有以下几个版本\n\n| 版本  | 插入  | 删除  | 查找  | 修改  | 持久化 | 其他特点见文档                       |\n|-----|-----|-----|-----|-----|-----|-------------------------------|\n| V1  | √   | ×   | √   | ×   | ×   | [V1版本文档](./docs/README.V1.md) |\n| V2  | √   | ×   | √   | √   | ×   | [V2版本文档](./docs/README.V2.md) |\n| V3  | √   | √   | √   | √   | ×   | [V3版本文档](./docs/README.V3.md) |\n| V4  | √   | √   | √   | √   | √   | [V4版本文档](./docs/README.V4.md) |\n\n- V1: 简化版本, 节点页使用数组实现, 只实现了部分功能, 实现方式也比较简单, 主要用于理论验证\n- V2: 过渡版本, 节点页使用链表实现, 实现上只考虑了唯一索引, 还不具备通用性\n- V3: 完备版本, 实现了几乎全部功能, 实现方式上考虑了各种场景, 对细节进行了优化\n- V4: 数据库定制版本, 实现将数据持久化, 实现上考虑了数据库的各种场景\n\n## 运行环境\n- Java\n  - SDK: 1.8\n  - 语言级别: 8\n- Maven: 3.8.1\n\n## 参考文献:\n\u003e - [B+树详解](https://ivanzz1001.github.io/records/post/data-structure/2018/06/16/ds-bplustree)\n\u003e - [数据结构合集 - B+树](https://www.bilibili.com/video/BV1bs421u7pY/)\n\u003e - [MySQL B+树相对于B树的区别及优势](https://juejin.cn/post/7117516433386373133)\n\u003e - [mysql InnoDB有几个文件 mysql innodb存储的文件结构](https://blog.51cto.com/u_16099267/9567953)\n\u003e - [深入浅出索引（上）](https://time.geekbang.org/column/article/69236)\n\u003e - [深入浅出索引（下）](https://time.geekbang.org/column/article/69636)\n\u003e - [普通索引和唯一索引，应该怎么选择？](https://time.geekbang.org/column/article/70848)\n\u003e - [怎么给字符串字段加索引？](https://time.geekbang.org/column/article/71492)\n\u003e - [日志和索引相关问题](https://time.geekbang.org/column/article/73161)\n\n## 生态\n- 基于此项目实现的关系型数据库: [EasySQL](https://github.com/wwkk-y/EasySQL)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwwkk-y%2Fbplustree","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwwkk-y%2Fbplustree","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwwkk-y%2Fbplustree/lists"}