A toy model, drawn from Shale’s design docs. The engine itself is Java.
I wanted a database I could follow all the way down.
So I’m writing one from scratch in Java: small enough to follow a single key from the moment it’s written to the moment it’s read back. Every mechanism readable, every cost in plain sight.
- Built: Log
- Built: Skiplist
- Built: Files
- Built: Reads
- Next: SQL
Crash-tested at every byte of the log. Next, ShaleDB: SQL whose EXPLAIN traces a query’s cost down to the disk.
Shale on GitHub



