After rewriting SQLite in Rust, Turso turns its sights on Postgres

theanonymousone6 pts0 comments

After rewriting SQLite in Rust, Turso turns its sights on Postgres

Jump to main content

Search

REG AD

DATABASES

After rewriting SQLite in Rust, Turso turns its sights on Postgres

Cloud database upstart wants one virtual machine core to power multiple SQL frontends

Joab Jackson

Joab<br>Jackson

SOFTWARE DEVELOPMENT AND CLOUD REPORTER

Published<br>wed 29 Jul 2026 // 12:28 UTC

Having built a SQLite-compatible database from scratch in Rust, cloud database provider Turso is attempting something more ambitious: a Postgres-compatible implementation on the same foundation.<br>"I don't think there is anything fundamentally wrong with Postgres. If there was something wrong with Postgres, we wouldn't rewrite it," Turso CEO Glauber Costa told The Register. But, like SQLite, Postgres could be freshened up for the cloud-native era.<br>Turso has grander ambitions than putting another notch on the Rustbelt. Its SQLite reimplementation, originally codenamed Limbo and later renamed Turso, uses a virtual machine architecture that the company believes can support multiple database frontends.

REG AD

This month, Turso-the-company launched the Postgres effort and suggested that the same architecture could eventually support frontends for systems such as MySQL and Redis. "Turso is becoming the LLVM of databases. One modern, reliable core; many database frontends compiled down onto it," Costa wrote, announcing the release.

REG AD

From fork to rewrite<br>Costa and fellow co-founder Pekka Enberg got the idea for Turso while studying the architecture of SQLite itself. Both had just left technical engineering jobs at ScyllaDB to start a San Francisco startup called ChiselStrike. They needed an online database, and SQLite was an obvious choice, but it needed updating to work as a cloud service.<br>Software developer D. Richard Hipp created SQLite in 2000 as a compact, standalone transactional SQL engine. Hipp has steadfastly kept the scope of SQLite minimal, refusing outside contributors or bloating it with additional features (much like Andrew Tanenbaum kept tight control on Minix, inspiring a young Linus Torvalds to create a much more ambitious Linux).<br>ChiselStrike forked SQLite as libSQL to give the company's developers the ability to modify the database system. It also provided a much-requested avenue for outside contributors to add their own features.<br>At first, contributors added features without making many changes to SQLite's core – not exactly a weekend job, even for an ambitious hacker. More fundamental work, such as introducing a richer type system, would require ChiselStrike to tackle the engine itself. The company therefore launched a complete rewrite, initially codenamed Limbo.<br>By then, ChiselStrike had already pivoted to a SQLite-based cloud service and renamed itself Turso. Limbo later became an official company project, adopted the Turso name – after the mythical Finnish sea creature Iku-Turso – and became the planned foundation for its future database engines.<br>Behind the SQL<br>While rewriting SQLite, the duo focused on its virtual machine architecture and concluded that the same approach could be expanded into a more general database execution engine. The software compiles SQL queries into its own bytecode language, called the Virtual Database Engine (VDBE).

REG AD

They built Turso using the same virtual machine design, one based on VDBE. This foundation could work not only to mimic SQLite, but any database system.<br>"Look close enough, and every SQL database is just a fancy collection of B-Trees with a bunch of Indexes," Costa wrote. Any features that Postgres has but SQLite lacks could be written with VDBE.<br>To demonstrate that their VM was sufficiently expressive, the duo built a demo that runs the 1990s classic video game DOOM in WebAssembly, with each rendered frame returned as a result row.<br>There are similar approaches to virtualizing the database. Google's Spanner can offer different modalities, spanning relational, graph, key-value, vector and other formats. Microsoft built the Cosmos database service on a similar premise.

MORE CONTEXT

Databricks unifies OLTP and OLAP, depending on what counts as a copy

The new database world according to Google: Inexact queries and AI in everything

Google tells database devs to lean hard on AI for PostgreSQL work

SQL Server may be too lucrative for Microsoft to ditch, but too legacy to love

Spanner and Cosmos operate higher up on the stack than Turso, Costa explained. Closer to Turso's building block style is Apache DataFusion, also built with Rust.<br>"The idea of a database that can speak multiple models is nothing new," Costa said. "What is different about Turso is that it sits at the lowest possible level, exactly one layer above the storage engine."<br>Postgres on top, Turso under<br>Enberg and Costa put together a Postgres-compatible prototype on top of Turso called pgmicro. Now came the hard work of making it ready for production use.

REG AD

"Essentially we would offer a...

turso database sqlite postgres costa cloud

Related Articles