4 ms·
Why not use https://github.com/rqlite/rqlite https://github.com/rqlite/rqlite ? You have to write to the SQLite via the rqlite HTTP API but it will replicate
by openthc 4y ago
Why not use https://github.com/rqlite/rqlite https://github.com/rqlite/rqlite ?
You have to write to the SQLite via the rqlite HTTP API but it will replicate the data to N nodes (at least 20) via RAFT and then others can read-only the SQLite replica files directly; and file-permissions prevent the accidental write.
- hardwaresofton 4y agorqlite is a nice project, but you kind of covered it: > You have to write to the SQLite via the rqlite HTTP API Also requiring non determinism (i.e. no RANDOM()) is something I don't think I really want to worry about. There are a few of tradeoffs for rqlite (and dqlite too, to be fair) that just don't seem to be quite worth it (especially compared to just running Postgres). I think people are realizing that having one far away writer is actually fine -- 90%+ of the traffic you're trying to serve fast is read queries.
- otoolep 4y agoActually rqlite release 7.7.0[1] adds support for RANDOM(). Timestamp functions support will be added to an upcoming release. It does this by statement-rewriting[2] before sending the SQL to the Raft log. [1] https://www.philipotoole.com/rqlite-7-7-0-released/ https://www.philipotoole.com/rqlite-7-7-0-released/ [2] https://github.com/rqlite/rqlite/blob/master/DOC/NON_DETERMINISTIC_FUNCTIONS.md https://github.com/rqlite/rqlite/blob/master/DOC/NON_DETERMI...
- hardwaresofton 4y agoTIL, thank you for pointing this out -- maybe it's time to re-evaluate my stance on rqlite & dqlite
- otoolep 4y agoAnd benbjohnson wrote the SQL parser[1] rqlite uses to do all this. So you see, the man is everywhere. :-) [1] https://github.com/rqlite/sql https://github.com/rqlite/sql