Remix.run Logo
▲ Show HN: Musql, JIT-compiled SQL, up to 300x faster than SQLite, 1000x vs. Turso(github.com)
8 points by dsamy 8 hours ago | 3 comments

Howdy HN!

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

▲stefanos82 4 hours ago | parent | next [-]

> Result: musql. Pronounced "muscle."

You mean it's pronounced "muscal", like Mezcal, but with an "ah" LOL!

▲DylanMerigaud 8 hours ago | parent | prev [-]

Running DOOM in the SQL VM is a fun flex.

▲dsamy 8 hours ago | parent [-]

100%