B-tree 深度解剖:从磁盘 I/O 模型到 boltdb 源码
每一个你信赖的数据库背后,都站着一棵 B-tree。本文从磁盘物理模型出发,逐层拆解 B-tree 与 B+tree 的设计动机、节点分裂与合并的完整过程、批量加载优化、写放大计算,并深入 boltdb 源码与完整的 C 实现,最终落地到 InnoDB、PostgreSQL、SQLite 等工业级变体的工程细节。
发布来自土法炼钢兴趣小组的知识、笔记、进展和应用。主题包括数据结构和算法、编程语言、网络安全、密码学等。
共 2 篇文章 · 返回首页
每一个你信赖的数据库背后,都站着一棵 B-tree。本文从磁盘物理模型出发,逐层拆解 B-tree 与 B+tree 的设计动机、节点分裂与合并的完整过程、批量加载优化、写放大计算,并深入 boltdb 源码与完整的 C 实现,最终落地到 InnoDB、PostgreSQL、SQLite 等工业级变体的工程细节。
数据库存储引擎的核心之争——原地更新还是追加写入?B+tree 与 LSM-tree 代表了两种截然不同的设计哲学,理解它们的取舍,就是理解现代存储系统设计的根基。