Twelve years of distributed SQLite

(philipotoole.com)

128 points | by otoolep 5 hours ago ago

14 comments

  • piterrro an hour ago

    Having used D1 in production - it's not very reliable. There was a comment on HN from one of D1 devs [1] saying that D1 is a sql wrapper on top of durable objects that mimicks sqlite distributed like nature.

    > I'll let you in on a sort of dirty secret: It's almost always better to use Durable Objects storage, rather than D1. Even if you only want a single global database, it's better to implement that as a singleton Durable Object, than by using D1. Because that's all D1 itself actually is: a singleton Durable Object that exposes an API to its SQLite database. It's just a wrapper.

    [1] https://news.ycombinator.com/item?id=48611834

  • Kinrany an hour ago

    Is there a project that does all of these together?

    - embeddable like sqlite

    - clustered like dqlite

    - has a standalone node like rqlite

    - can be backed up to S3 like litesteeam

    - optionally AP like cr-sqlite alongside CP

  • brooksbp 2 hours ago

    Was a fun read until the end where the author made damn sure that history records who drew the blueprint.

    • Scaevolus 9 minutes ago

      "Honesty" is what crossed the threshold for me. It's pretty weird to spend 12 years on something and not bother to write the thousand word history yourself.

  • chasil 3 hours ago

    I have never examined this in any detail before. It looks far easier than the mass majority of clustered database architectures.

    https://rqlite.io/

    • qaq an hour ago

      using it for control layer pretty happy so far

  • tra3 2 hours ago

    I know that latest rails suggests SQLite as one of the production options. I don’t get how it’d work with concurrent access though. Time to look into it.

    • bendangelo an hour ago

      Can use one sqlite per tenant or look into the new multi writer lib on github.

    • npn 2 hours ago

      Wal or wal2 can help you with that.

  • feverzsj 2 hours ago

    There is also hctree from sqlite.

  • a3nz3g 3 hours ago

    Like the idea of distributed SQLite, but do we have benchmark? What use cases it has advantage?

  • esafak 3 hours ago

    Very timely for me. I run dqlite in a small cluster and I'm looking to move off it to something more robust. What's recommended in this regime?