My project may also be interesting
JohannesLichtenberger opened this issue · comments
Hi,
first of all, awesome work :-)
couldn't find your e-mail address, but I'm working on a (bi)temporal DBS[1] in my spare time, which basically also tracks changes and stores the results of CRUD operations, creating new revisions on each trx commit by appending data to an indexed log (thus, also no WAL is needed -- also due to the limitation of a singe writer per resource).
It avoids long chains of having to apply incremental deltas with intermittant snapshots through a sliding snapshot algorithm.
You can't alter the history, but of course revert to an old revision, add commit messages, track changes to specific nodes or even subtrees, as it optionally stores a rolling hash...
Thought since a couple of years, that it kind of brings temporal "tables" (binary JSON resources actually) and event stores one step closer.
Kind regards and a nice week
Johannes
[1] https://github.com/sirixdb/sirix | https://sirix.io | https://sirix.io/docs/concepts.html