sqlite_fdw
rqlite
sqlite_fdw | rqlite | |
---|---|---|
6 | 112 | |
195 | 14,948 | |
2.1% | 1.3% | |
5.7 | 9.9 | |
8 days ago | 6 days ago | |
PLpgSQL | Go | |
GNU General Public License v3.0 or later | MIT License |
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.
sqlite_fdw
-
Things that surprised me while running SQLite in production
https://github.com/pgspider/sqlite_fdw
Postgres has foreign data wrappers which can kinda achieve this(see also: https://github.com/pgspider/sqlite_fdw ), but ive been surprised by how well sqlite is already supported by many tools : sometimes it comes for free as its used in testing - hooking up stuff like litestream can work really wel l too
-
Is it possible to import or convert an SQLite3 db file into a Postgres database on docker?
Another option might be the SQLite FDW
- Silver Bullet - Personal Knowledge Management
-
Fly.io Buys Litestream
I've not done this but it's intriguing; potentially a best-of-all-worlds solution.
I think "proper" automatic replication is not possible given the mismatch between Postgres and SQLite - not everything in Postgres maps to a thing that is possible in Postgres.
That said, there are a variety of ways to get data out of Postgres, and a variety of ways to get things into SQLite.
You could periodically export CSVs or whatever from Postgres and periodically import them into SQLite.
Or you could do a more realtime sync by using a Postgres foreign data wrapper like this one: https://github.com/pgspider/sqlite_fdw which would let you write directly to SQLite. Combine that with database triggers on the Postgres side of things and you've got something pretty close to realtime replication.
Those sorts of solutions wouldn't be as robust as "real" replication, but could be very useful for a lot of scenarios. You could have Postgres importing gobs of data, and "replicating" it over to your reporting server which uses SQLite as a data source.
-
How to load sqlite3 db file in pgadmin4?
pgadmin4 does not support it, but you can try sqlite_fdw
-
Which database should I use to store about 200GB of financial data?
If you encounter limitations posed by SQLite it will be easy to migrate to PostgreSQL. You can even open the SQLite database in PostgreSQL.
rqlite
- The lightweight, easy-to-use, distributed relational database built on SQLite
-
CursusDB β A new scalable distributed document oriented database
Seems like you could do the same with rqlite [1], since SQLite supports JSON.
[1]: https://rqlite.io
-
Rqlite 8.0
rqlite[1] creator here, happy to answer any questions about rqlite, this latest release, and how it works.
[1] https://rqlite.io
-
Adding new database engine support
I found simple distributed RQlite https://github.com/rqlite/rqlite based on raft and sqlite. How hard is to add it?
- I'm All-In on Server-Side SQLite
-
So, you want to deploy on the edge?
rqlite[1] creator here, happy to answer any questions. rqlite also supports read-only nodes, which can also help with reads at the "edge". It probably wouldn't scale to 100s of nodes, it is an option.
"rqlite supports adding read-only nodes. You can use this feature to add read scalability to the cluster if you need a high volume of reads, or want to distribute copies of the data nearer to clients β but donβt want those nodes counted towards the quorum. These types of nodes are also known as non-voting nodes."
[1] https://rqlite.io/
[2] https://rqlite.io/docs/clustering/read-only-nodes/
- LiteFS Cloud: Distributed SQLite with Managed Backups
- Show HN: Rqlite, distributed DB built on SQLite, now runs on MIPS, RISC, PowerPC
- rqlite v7.19.0: the lightweight distributed relational database built on Go, Raft, and SQLite -- now runs on MIPS, PowerPC, and RISC
- rqlite v7.18: the lightweight distributed database built on Go, Raft, and SQLite -- now with new Unified HTTP endpoint for easy reads and writes
What are some alternatives?
chiselstore - SQLite + Little Raft = π
dqlite - Embeddable, replicated and fault-tolerant SQL engine.
Prisma - Next-generation ORM for Node.js & TypeScript | PostgreSQL, MySQL, MariaDB, SQL Server, SQLite, MongoDB and CockroachDB
litestream - Streaming replication for SQLite.
awesome-selfhosted - A list of Free Software network services and web applications which can be hosted on your own servers
cockroach - CockroachDB - the open source, cloud-native distributed SQL database.
honeysql - Turn Clojure data structures into SQL
bolt
better-sqlite3 - The fastest and simplest library for SQLite3 in Node.js.
etcd - Distributed reliable key-value store for the most critical data of a distributed system [Moved to: https://github.com/etcd-io/etcd]
silverbullet - The hackable notebook
TinyGo - Go compiler for small places. Microcontrollers, WebAssembly (WASM/WASI), and command-line tools. Based on LLVM.