Published Jan 30, 2025

Turso is rewriting SQLite in Rust (Interview)

Glauber Costa, CEO of Turso, explores the transformative project of rewriting SQLite in Rust, addressing challenges in open-source flexibility and introducing innovative features to boost database capabilities and adoption. The episode delves into Turso's strategy for separating business interests from open-source contributions, aiming to revolutionize database technology with a billion databases in use.
Episode Highlights
The Changelog logo

Popular Clips

Questions from this episode

Episode Highlights

  • SQLite Limits

    highlights the limitations of SQLite, particularly its status as public domain software, which restricts open contributions. He explains that while SQLite's code is accessible, the maintainers do not accept contributions, which poses challenges for developers who wish to innovate or expand its capabilities 1. This limitation became apparent when Costa and his team wanted to deploy SQLite databases to the edge and implement features like read replicas, which required modifications that were not possible under SQLite's current structure 2.

    SQLite is a public domain software, which is technically a different difference. That doesn't matter, right?

    ---

    These constraints led to the decision to create an open contribution version of SQLite, allowing for greater flexibility and innovation.

       

    Turso's Strategy

    To address SQLite's limitations, Costa and his team decided to fork the project, creating a version that supports open contributions. This approach allows them to tap into the creativity of the community, fostering innovation and collaboration 3. Costa emphasizes the importance of community involvement, drawing parallels to the Linux kernel's success through widespread contributions 4.

    We want to make people in the community maintainers as well.

    ---

    By separating the server and client code, Turso aims to maintain a clear distinction between their business and the open-source project, ensuring that the community can freely contribute and enhance the software 5.