2 ms·
It is actually implemented more like a triple store than an oodbms. Just with time added as a 4th parameter. Their Entity class makes it feel a bit like an ood
by pelle 14y ago
It is actually implemented more like a triple store than an oodbms. Just with time added as a 4th parameter.
Their Entity class makes it feel a bit like an oodbms though in that it kind of acts like a hash map.
- mtrimpe 14y agoCould you explain how it's more like a triple store with a time parameter? My previous explanation already papered over a ton of fundamental differences in order to make a somewhat understandable generalization, but I can't make the jump to triple-store from my understanding of Datomic. I basically see it as "just a single-writer many-reader distributed fully persistent data-structure."
- jerf 14y agoI'm sort of sorry to turn this around on you, because it's generally poor form, but given the contents of the linked article which describes Datomic exclusively in the form of timestamped triples, can you explain how it's not a triple store? If it's because you store objects as many triples with the same subject and different adjectives... err, well, yes, that's how you store objects in a triple store. Not remotely new, and still subject to my initial question.
- mtrimpe 14y agoThe article leads people to confuse the chosen view (triples) with the model (versioned object graph.) The main difference is that in Datomic the timestamps don't identify a single fact but the entire object graph at that point in time. To make an analogy; saying that Datomic is just a triple store is about the same as saying that git is just a store for lists of diffs.