/tinysql

[WIP] A tiny relational database written in Rust (CMU 15-445).

Primary LanguageRust

English

tinysql - 简单关系型数据库 (基于 CMU 15-445 课程)

  • Disk Manager 磁盘管理
  • LRU-K置换算法
  • 可扩展哈希表
  • 缓冲池管理
  • B+树索引
  • Table Heap 表堆
  • Catalog 元数据
  • Binder 绑定器
  • Planner 计划器
  • 优化器
  • 火山模型执行器
  • MVCC多版本并发控制
  • 事务

架构

architecture

运行

安装rust工具链

cargo run

demo

参考

问题

1.如何处理B+树节点上相同的key?

2.如果B+树节点的key大小超过页容量怎么处理?