3 ms·
I was about to say SQLite, it seems perfect - binary, fast, easy to update cheaply in place, immune to escaping et al problems (if you use prepared statements,
by FRex 9y ago
I was about to say SQLite, it seems perfect - binary, fast, easy to update cheaply in place, immune to escaping et al problems (if you use prepared statements, not glue SQL with + of course), reliable, available in most languages (even for C and C++ the integration is trivial - it's a single pair of files drop in) and on the CLI, stable, the history data is very row/item oriented and not totally heterogeneous or free form, etc.
I totally drank the SQLite koolaid a long time ago.
- cben 9y agoHistory file may be read & updated simultaneously my multiple processes. Is that sufficiently safe from corruption with SQLite? (honest question, no FUD implied. same risks apply to alternatives too.)
- timdierks 9y agoYes, SQLite has robust multiprocess locking and transaction support. https://sqlite.org/faq.html#q5 https://sqlite.org/faq.html#q5