Missing a fast pure Go embedded SQL database. The issue is that compared to C, go is slow. Having done a lot of JIT in go, I naturally wanted to stick a JIT that generates native query kernels and see what happens.
Result: musql. Pronounced "muscle."
On a 100K-row filtered count, musql takes 21 µs: about 300x faster than C SQLite and nearly 1,000x faster than Turso. Single-threaded, warm cache, using musql's direct API, native C SQLite, and Turso's Go driver. Filtered sums are 130x faster than C SQLite, grouped aggregates 95x.
It works with Go's database/sql or through a server for libSQL clients. It uses its own storage format, with SQLite import/export. And yes, the SQL VM runs DOOM.
Code, setup, and benchmarks: https://github.com/samyfodil/musql
DylanMerigaud•11m ago
dsamy•6m ago