I'm frankly shocked by how well these Clojure Datalog DBs work. Both the data-modelling side (datoms) and the query side are extremely expressive and well integrated into Clojure itself as well.
The principles are (from my perspective): How would a database (API) look like when both data changes over time and structural flexibility were first class concepts. The result is almost mindbogglingly simple.
Datalog is already such a powerful language in and of itself and I really wonder why it is still such a niche thing.
Don't get me wrong. SQL is great. It is there for a reason. And it is and should be "the default" for most use-cases. But Clojure Datalog DBs have a fairly clear and large advantage, especially when data is temporal and/or graph-like.