eugene-khyst / postgresql-event-sourcing

A reference implementation of an event-sourced system that uses PostgreSQL as an event store built with Spring Boot. Fork the repository and use it as a template for your projects. Or clone the repository and run end-to-end tests to see how everything works together.
Apache License 2.0
986 stars 84 forks source link

My project may also be interesting #11

Closed JohannesLichtenberger closed 6 months ago

JohannesLichtenberger commented 7 months ago

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