数据库教学项目AtomixDB
github.com/Sahilb315/AtomixDB
AtomixDB 是一个完全用 Go 语言编写的小型关系数据库。主要重点是实现和理解数据库的工作原理、存储管理和事务处理。
目前已有的功能是:
⭐支持索引的 B+树存储引擎:实现快速数据检索,这对于数据库性能至关重要,尤其是在涉及大数据集的场景中。
⭐节点重用的空闲列表管理:数据库管理一个空闲列表以重用节点,这是一种通过回收已释放节点的空间来优化存储使用的策略。这有助于减少碎片并提高磁盘空间效率。
⭐事务支持:AtomixDB 支持事务,通过原子操作确保数据的一致性和完整性。
⭐并发读取:处理并发读取的能力通过允许多个用户同时读取数据而无需锁定问题来提升性能,使其适合读取密集型应用。