Why? Well, for benchmarking for example, or if the application you are using has a bad multi-user implementation and you don't want to migrate to another database...
Why? Well, for benchmarking for example, or if the application you are using has a bad multi-user implementation and you don't want to migrate to another database...
$ ssh dbserver -c sqlite3 /path/to/database.db
Is as close as you’re going to get. You can have multiple users doing this but all transactions are serialised so don’t expect concurrent writes to be performant - concurrent SELECTs will be fine."Bedrock [..] is a networking and distributed transaction layer built atop SQLite"
"... That query can be any SQLite-compatible query – including schema changes, foreign key constraints, partial indexes, native JSON expressions, or any of the tremendous amount of functionality SQLite offers."
write+sync is a speed limiter in general (even on SSDs), because of waiting for the syncs which are needed for commit durability. On HDD, serial transactions can't go faster than roughly twice the rotation time of the HDD per write, plus seeks, and on network filesystems they can't go faster than four times the network latency (two syncs per commit) plus whatever the backing store needs.
The trick to getting high commit throughput is to allow the durability part of multiple independent transactions to be committed concurrently. On a filesystem-backed DB this means writing multiple transactions per fdatasync. It would be tricky for SQLite to do this because of its architecture as a library and synchronous API, but not impossible.
https://www.sqlite.org/cgi/src/doc/begin-concurrent/doc/begi...
It is a Redis module that embed SQLite.
The idea is to run medium complexity project on top of a single runtime dependencies, Redis.
You will find Redis in most applications anyway, and for a simple crud application sqlite is more than enough.
In this way you get rid of a lot of systems complexity. And I works both in memory (crazy fast) or with standard files.
Don't know if this is possible and just how horribly it would perform, but it could be legit useful if it can solve e.g. the remote fs conondrum mentioned in other comments.