Hasty Briefsbeta

Bilingual

ToyDB rewritten: a distributed SQL database in Rust, for education

a year ago
  • #database
  • #Rust
  • #educational
  • toyDB is a distributed SQL database written in Rust as an educational project.
  • Features include Raft distributed consensus, ACID transactions with MVCC-based snapshot isolation, and pluggable storage engines.
  • Includes an iterator-based query engine with heuristic optimization and time-travel support.
  • Supports SQL features like joins, aggregates, and transactions.
  • Originally created in 2020 to learn about database internals, rewritten based on professional experience.
  • Designed for simplicity and correctness, not performance or scalability.
  • Includes architecture guide, SQL examples, SQL reference, and research materials.
  • Can run a local five-node cluster and includes a command-line client.
  • Uses Golden scripts for testing and comes with a workload benchmark tool.
  • Debugging support via VSCode and CodeLLDB extension.