Introducing LiteFS

This page summarizes the projects mentioned and recommended in the original post on news.ycombinator.com

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • fuse

    FUSE library for Go.  go get bazil.org/fuse   (by bazil)

  • Yes, FUSE adds overhead. However,

    1. kernel page cache fully removes the read overhead for in-memory pages

    2. There's a FUSE_PASSTHROUGH mode that removes that overhead for all reads & writes. I haven't studied exactly what writes LiteFS needs to observe (just journal vs all data writes), but at least for reads it seems to pass them straight through. We could well submit a FUSE_PASSTHROUGH_READ patch to the kernel, and use that to remove all read overhead. The patch should be trivial, since the full FUSE_PASSTHROUGH mode is there already.

    Disclaimer: I wrote the FUSE framework LiteFS uses, https://bazil.org/fuse

    https://source.android.com/docs/core/storage/fuse-passthroug...

  • litestream

    Streaming replication for SQLite.

  • Thios is distributed SQLite 3, running (I assume at least partially managed?) Litestream[0] for you. Which is pretty cool!

    What I'd like to have seen is how this compares to things like rqlite[1] addressed directly in the article

    [0]: https://litestream.io/

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • litefs

    FUSE-based file system for replicating SQLite databases across a cluster of machines

  • The TH3 test is proprietary and, IIRC, it might only be available to SQLite Consortium members and that's $125k/year. We do pay for SQLite support at Fly.io but not quite to that level.

    We do have plans to run against the Tcl test suite[1] although most of that test suite is not applicable to LiteFS since it tests higher level constructs.

    Since LiteFS acts on the raw pages, it really just functions similar to a VFS. Out of the 130K source lines of code in SQLite, only 4.8k are for the Unix VFS. As such, the testing coverage from the SQLite test suite mostly tests non-VFS code.

    [1]: https://github.com/superfly/litefs/issues/17

  • rqlite

    The lightweight, distributed relational database built on SQLite.

  • wunderbase

    Serverless GraphQL Database built on top of Firecracker, SQLite and Prisma

  • Sound like a drop in solution to add high availability to WunderBase (https://github.com/wundergraph/wunderbase).

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

    WorkOS logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts