and yeah you have to spend a lot of upfront time designing your data models
Take for example AuroraDB: the sheer engineering it took to make SQL do scalable OLTP at all tells you how much that flexibility actually costs to keep.
So much so, we re-wrote the DynamoSDK to squeeze out more optimizations so we could be the same cost even though we were a layer in front of dynamo. We used key encoding and other various technique as well as managed capacity (on demand vs reserved) to transparently optimize workloads for price. In our experience we saw dramatic gains vs just vanilla SDK usage.
If you're curious, here was the marketing website, but we're now part of Databricks: https://stately.cloud/
I don’t think the backend matters. It’s the frontend wrapper that makes or breaks HA.