DynamoDB AutoScaling is still throttling

I have an application using DynamoDB and I noticed that they just implemented autoscaling which is awesome. I love the concept and the timing for my application is pretty perfect. However, I am still getting some problems that I am wondering about if I can not change the settings to uninstall.

My app is getting some spikes in use, so I think this is the perfect thing to use, however I still get throttling when autoscaling. Here are my read graphs for the last 12 hours: autoscaling

As you can see, when it's a spike, the usage is set to low, so it throttles for a minute or two until the update starts working and then it works. This is ok I think and better than no scaling, but I wish it wouldn't throttle at all ...

Is there a way to tell DynamoDB to never throttle unless it exceeds 100 (or 200, or whatever I set as the upper limit)? It's just that if it gets a surge, increase the throughput for 15 minutes, or whatever, until the surge ends?

+3


source to share


1 answer


Autoscale uses CloudWatch. You can see these alarms by going to your CloudWatch dashboard and look for alarms that include your table name and "DO NOT CHANGE OR DELETE" in the description.

Why am I telling you this?

Well, CloudWatch has some minimum period granularity. It is currently 1 minute. This means that it will wait at least 1 minute before firing any event to its listeners. Therefore, it will take at least one minute after the start of the download until the capacity is increased. In fact, it will be even more, since the increase in capacity also takes time. Bottom line: if you have a very large burst, some requests may be throttled, since autoscaling has not yet taken effect and bursting may be exhausted.



A simple but costly solution is to increase the initial capacity.

If you know ahead of time about an upcoming spike (for example, you periodically perform a certain job or peaks of clients at a certain time), you can use the API to programmatically change the autoscaling.

+1


source







All Articles