I'd also add a sentence about transactions being first class. Everything is wrapped in transactions, you can add metadata to transactions (who did it, when did it happen), and since no data is lost, you can use transactions IDs to see what your database looked like 1 week ago, etc.
Comments
Great summary!
I'd also add a sentence about transactions being first class. Everything is wrapped in transactions, you can add metadata to transactions (who did it, when did it happen), and since no data is lost, you can use transactions IDs to see what your database looked like 1 week ago, etc.
Yes, and there's tricks where you can add speculative future data, which won't actually be stored in the DB. No doubt helps with projections.
Also I like the idea that queries can invoke your own code. (Which is feasible since the queries execute on the same machine as your app.)