Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Much like #258, add granular downscaling as well. Only supports downscaling on consumed vs provisioned capacity, as I can't imagine a situation where one would want to scale DOWN when they have throttling.
With this kind of setup a user could, for example, only scale down slightly when at a certain point, but also immediately scale all the way down to 1 read/write unit when they have 0% utilization. This would prevent a situation like described in #245 where the autoscaler would only downscale very few units each iteration, risking bumping up against the downscale limit.
I'll work on the docs if this looks good to you.
On a side note, I think a lot of this code could be consolidated together, as I performed more copy/paste of large chunks of code than I'd care to admit, but I figured that refactoring would be out of the scope of this feature. I'd like to visit it after this and my other PRs are merged, though.