5 ms·
> frequently find myself wanting a light append-only data store for pet projects As someone who is mystified by that statement: why?
by MrBuddyCasino 12y ago
> frequently find myself wanting a light append-only data store for pet projects
As someone who is mystified by that statement: why?
- dyladan 12y agoCould be used as an event store. Rather than storing a list of mutable objects as in a normal database, you store the changes themselves as a list of facts. This makes things like replication a lot easier and can be optimized to be much faster than a traditional database.
- batbomb 12y agoThere's Apache BookKeeper to fill some of those needs.
- eropple 12y agoI've never seen BookKeeper in production. Where would you recommend its use over something like Kafka?
- lomnakkus 12y agoGreat, but that's not a product. If you're on board with the CQRS/ES thing, actually building your own should not be difficult. (Ok, so I'm assuming non-distributed DB here, but with a bit of imagination one could also do infinitely(!) scalable CQRS/ES within Bounded Contexts, given the fresh crop of easily understandable/implementable concensus algorithms.)
- wtetzner 12y agoAuditing becomes easy. The history of all changes is automatically available.
- rakoo 12y agoIf you know your data has no duplicate (eg, you want to sort and store a list of cities), you know you don't need to check the already-written objects; you only need to append objects.
- probablyfine 12y agoI've used it as the backing for a time-series database and to store deltas for a state-machine - in both situations I wanted something that understood "POJOs" and didn't require a lot of setup. Even in the case of multiple non-unique entries, if the stored objects are not meant to be mutable, the API exposes .reverse() to find the most recent.