Live data from Hacker News

Datomic: Look at all the things I'm not doing

augustl.com

11–20 of 48 posts

Re: Datomic: Look at all the things I'm not doing

#12
post #9

Only way to experience this magic without paying $$ is to watch youtube videos? :\

I think you can adapt the concept of immutable data structures to any situation.

For key-value store an immutable hash array mapped trie is a good place to start.

I.e. each update creates a new "head" node and duplicates only those parts which are required to maintain unique versions of the tree. The hash array mapped trie is excellent for this purpose since each node has many children, and thus a unique version does not need to duplicate too many nodes.

Then, just store all the head nodes in a linear order in e.g. a list, and you can travel back in time by navigating the head nodes backwards.

https://en.wikipedia.org/wiki/Hash_array_mapped_trie

https://infoscience.epfl.ch//record/64398/files/idealhashtre...

https://github.com/clojure/clojure/blob/master/src/jvm/cloju...

Re: Datomic: Look at all the things I'm not doing

#16
post #8
post #6

Earlier quoted context omitted.

I think this is an important point, and I know it often derided as people asking a company to give something away for free, so I want to defend it. I admire Cognitect's ambition in going up against big database vendors as a small team, and creating something very unique. That said, as a user, it's frustrating that when I get an error I can't just pop open the source and see what's going on. It's frustrating that the…

I am regularly alarmed by the fact that nobody has tried to make an open source clone yet..

Well, why would they? Clones would be using relatively old technology. The current bleeding-edge research here is on more-structured, more-formal knowledge representation, stuff like FQL/AQL [0] which is open-source from the first day. Maybe Datomic's not sufficiently better than Pg or SQLite to motivate anybody.

[0] http://categoricaldata.net/fql.html

Re: Datomic: Look at all the things I'm not doing

#17
post #14

I couldn't follow his arguments against event sourcing. Could someone elaborate on the differences?

Apparently dataomic creates indexes for you[1] so you don't have to write views on top of the events like you'd do if you use just insert events in a table in postgres.

So for example if you want to count the number of page views for a particular user, you'd simply use EAVT Index for that particular userId.

https://docs.datomic.com/cloud/query/raw-index-access.html

Re: Datomic: Look at all the things I'm not doing

#20
post #4

This will be a tongue in cheek comment, but there's another thing Datomic isn't making you do either: GDPR compliance

For what it's worth, FaunaDB is also temporal and supports retention periods, TTL rows, and locality control, specifically for GDPR.

Document-relational model instead of Datalog.

Post reply on HN