It maintains double-entry consistency of balances with DynamoDB. I uses DynamoDB (or any No-SQL) conditional puts. You can think of it as a update + where of SQL databases. But infinitely more scalable and available.
Is DynamoDB baked into the product or could new adapters be written to use different key/value stores? Things like leveldb for local-only ledgers or even an adapter on top of PostgreSQL's jsonb field might be useful.
It was designed to support multiple DBs. Adding a new adapter should be pretty easy. I will add the first for Datomic in the coming weeks. This should pave the way for the next ones (I will add some docs on this). I really believe on it supporting many DBs.
Here is a piece I wrote about how it's achieved: https://decimals.substack.com/p/things-i-wish-i-knew-before-....