toyDBRust 编写的分布式 SQL 数据库

联合创作 · 2023-10-01 01:41

toyDB 是用 Rust 编写的分布式 SQL 数据库,作为一个学习项目。大多数组件都是从头开始构建的,包括:

  • 用于线性化状态机复制的基于 Raft 的分布式共识引擎。

  • 具有基于 MVCC 的快照隔离的符合 ACID 的事务引擎。

  • 具有 B+树和日志结构后端的可插拔存储引擎。

  • 具有启发式优化和时间旅行支持的基于迭代器的查询引擎。

  • SQL 接口包括投影、过滤器、连接、聚合和事务。

toyDB 不适合在现实世界中使用,但其他学习数据库内部结构的人可能会感兴趣。

toyDB 的架构对于分布式 SQL 数据库来说是相当典型的:一个由 Raft 集群管理的事务键/值存储,上面有一个 SQL 查询引擎。有关更多详细信息,可参阅 架构指南

浏览 10
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报
评论
图片
表情
推荐
点赞
评论
收藏
分享

手机扫一扫分享

编辑 分享
举报