1.前言
数据库是我们在日常开发中一直使用的持久化组件。但是,『你是否曾思考过它是如何工作的?』
- 数据在内存和磁盘上的存储格式是什么样的,它们有何区别,为什么有这样的区别。
- 数据是如何在内存和磁盘之间“流动”。
- 索引的格式是什么样的。
- 全表扫描时到底发生了什么。
我们将通过构建一个简单的数据库服务来解答上述的问题。
2.连载内容
我将使用连载的方式,跟大家分享如何逐步构建一个简单的数据库服务:TinySQL。
- TinySQL-1-整体架构
- TinySQL-2-通讯协议设计
- TinySQL-3-服务端并发模型
- TinySQL-4-客户端命令行工具
- TinySQL-5-SQL词法分析与语法分析
- TinySQL-6-纯内存只写的数据库
- TinySQL-7-持久化
- TinySQL-8-光标的抽象
- TinySQL-9-BTree简介
- TinySQL-10-BTree叶子节点格式
- TinySQL-11-二分搜索
- TinySQL-12-重复的主键
- TinySQL-13-叶子节点的分裂
- TinySQL-14-递归搜索BTree
- TinySQL-15-扫描多层的BTree
- TinySQL-16-节点分裂之后更新父节点
- TinySQL-17-分裂内部节点
3.写在最后
今天分享的内容就到这里,『如果本文对你有所帮助,记得关注我,我将持续在掘金上分享技术干货,关注我,下期分享不迷路』。