Finally! One of the worst things as a startup was trying to capacity plan my DynamoDB when I had no idea what the useage pattern would be. Now I can not worry about it while I get data for future capacity planning.
Doesn't seems to be attractive price-wise.<p>Quick math (us-east-1 North Virginia, reads, strong consistency):<p>1. Provisioned:<p>$0.00013 per RCU<p>1 RCU provides 3,600 reads per hour<p>0.00013 * 1000000 / 3600 ~= $0.036 per mln reads<p><a href="https://aws.amazon.com/dynamodb/pricing/provisioned/" rel="nofollow">https://aws.amazon.com/dynamodb/pricing/provisioned/</a><p>2. On-demand:<p>$0.25 per million read request units<p><a href="https://aws.amazon.com/dynamodb/pricing/on-demand/" rel="nofollow">https://aws.amazon.com/dynamodb/pricing/on-demand/</a><p>So AWS on-demand is more expensive if your read utilisation is higher than 14.4%. Not that exciting for any serious use-case.<p>Plus you can reserve DynamoDB capacity for a year and save ~56%:
(30 + 0.0025 * 24 * 365) / (100* 0.00013 * 365 * 24 )
Love that this feature finally released.
I was a dev manager on DynamoDB years ago when we first started working on this. I left three years ago and had almost given up hope that this feature would see the light of day.<p>The great thing about it is that it helps with spiky and sporadic workloads.
In my current work I have a bunch of unit tests that hit a set of dynamodb tables. I have those tables provisioned at a 5 RCU and 5 WCU each. Multiply this by ten tables and I'm paying $25 per month. In the grand scheme of costs, this isn't much, but it's annoying and adds up.
(One can argue that unit tests should be hitting a mock or a dynamodb local. That's true, but you also want some tests that actually hit the service.)<p>On demand can be great for sporadic tests, for prototypes, for small personal projects, and for just messing around.<p>There are also spiky non-customer-facing production scenarios that can benefit from On demand.
It's nice to see that DynamoDB becomes truly serverless (although it lived under the serverless umbrella for a while) with this enhancement.<p>But I feel the on-demand mode should be best accompanied with the provisioned mode, which is the hybrid mode. So instead of using the laggy autoscaling to handle the burst traffic, using the on-demand capacity to serve that.<p>Disclosure: I work for Alibaba Cloud and use Alibaba Cloud Table Store which provides the hybrid mode ( <a href="https://www.alibabacloud.com/help/doc-detail/27291.htm" rel="nofollow">https://www.alibabacloud.com/help/doc-detail/27291.htm</a> )