litestream-base
dqlite
litestream-base | dqlite | |
---|---|---|
1 | 33 | |
32 | 3,717 | |
- | 0.9% | |
0.0 | 9.5 | |
about 2 years ago | 5 days ago | |
Dockerfile | C | |
- | GNU General Public License v3.0 or later |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
litestream-base
-
Fly.io Buys Litestream
Litestream does a couple of things. It started as a way to continuously back sqlite files up to s3. Then Ben added read replicas – you can configure Litestream to replicate from a "primary" litestream server. It's still limited to a single writer, but there's no s3 in play. You get async replication to other VMs: https://github.com/fly-apps/litestream-base
We have a feature for redirecting HTTP requests that perform writes to a single VM. This makes Litestream + replicas workable for most fullstack apps: https://fly.io/blog/globally-distributed-postgres/
It's not a perfect setup, though. You have to take the writer down to do a deploy. The next big Litestream release should solve that, and is part of what's teased in the post.
dqlite
-
Marmot: Multi-writer distributed SQLite based on NATS
If you're interested in this, here are some related projects that all take slightly different approaches:
- LiteSync directly competes with Marmot and supports DDL sync, but is closed source commercial (similar to SQLite EE): https://litesync.io
- dqlite is Canonical's distributed SQLite that depends on c-raft and kernel-level async I/O: https://dqlite.io
- cr-sqlite is a Rust-based loadable extension that adds CRDT changeset generation and reconciliation to SQLite: https://github.com/vlcn-io/cr-sqlite
Slightly related but not really (no multi writer, no C-level SQLite API or other restrictions):
- comdb2 (Bloombergs multi-homed RDMS using SQLite as the frontend)
- rqlite: RDMS with HTTP API and SQLite as the storage engine, used for replication and strong consistency (does not scale writes)
- litestream/LiteFS: disaster recovery replication
- liteserver: active read-only replication (predecessor of LiteSync)
- I'm All-In on Server-Side SQLite
-
SQLite performance tuning: concurrent reads, multiple GBs and 100k SELECTs/s
I'd be curious for a similar tuning with Dqlite: https://github.com/canonical/dqlite
- Strong Consistency with Raft and SQLite
-
9 years of open-source database development: reviewing the designs
Anyone knows how the DB this is about, https://rqlite.io/, compares with https://dqlite.io/ by Canonical (both seem to be distributed versions of sqlite)?
- SQLite the only database you will ever need in most cases
-
Transcending Posix: The End of an Era?
For folks' context, the new tool that's being discussed in the thread mentioned by the parent here is litefs [0], as well as which you can also look at rqlite [1] and dqlite [2], which all provide different trade-offs (e.g. rqlite is 'more strongly consistent' than litefs).
[0]: https://github.com/superfly/litefs
[1]: https://github.com/rqlite/rqlite
[2]: https://github.com/canonical/dqlite
-
SQLite is not a toy database
I presume you're familiar with https://github.com/canonical/dqlite (made by my employer) and https://github.com/rqlite/rqlite (unrelated)? How will mvsqlite compare to those?
-
GitDB, a distributed embeddable database on top of Git
Check out dqlite, it's sqlite but with a raft consensus to distribute changes through a log: https://dqlite.io/ You can link it in as a library too, it sounds like exactly what you want.
- Ask HN: Free and open source distributed database written in C++ or C
What are some alternatives?
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
rqlite - The lightweight, distributed relational database built on SQLite.
chiselstore - SQLite + Little Raft = 🚀
kine - Run Kubernetes on MySQL, Postgres, sqlite, dqlite, not etcd.
sqlite_fdw - SQLite Foreign Data Wrapper for PostgreSQL
better-sqlite3 - The fastest and simplest library for SQLite3 in Node.js.
litestream - Streaming replication for SQLite.
boringproxy - Simple tunneling reverse proxy with a fast web UI and auto HTTPS. Designed for self-hosters.
actordb - ActorDB distributed SQL database
Bedrock - Rock solid distributed database specializing in active/active automatic failover and WAN replication