- Newest
- Most votes
- Most comments
You are not going to find a "break point" in DynamoDB. You are going to find a "you ran out of configured capacity" point, and you can always raise the capacity (or go to On Demand).
The key concept you should research here to understand your seemingly odd results is "burst capacity" whereby a table may provide you with up to 5 minutes worth of unused provisioned capacity. If you provision a table to just 1 RCU and don't use it then after 5 minutes your table will have accumulated 300 RCUs worth of burst capacity, which the table may let you consume before throttling you. Will it let you consume all 300 the first second? Maybe, maybe not. Once you're above your provisioned capacity the table might throttle you, but if you've got burst capacity it probably won't always throttle you.
Burst capacity is a great feature for temporary spikes above a provisioned capacity limit, but it isn't a guarantee. If you want to handle a certain workload, provision at or above that workload.
I suggest you put the table in On Demand mode (so you don't have to think about capacity and can trust the table to handle what you throw at it), proceed with writing your app using good design practices, then if the cost is non-trivial you can look to CloudWatch to see how you might switch to Provisioned mode with auto-scaling as a cost savings mechanism.
Relevant content
- asked 25 days ago
- asked 3 years ago
- AWS OFFICIALUpdated 2 years ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated a year ago
- AWS OFFICIALUpdated 2 years ago