最近我使用DynamoDB来构建我的服务。我对DynamoDB表使用预配模式。
为了测试DynamoDB的反应,我将读取容量单位和写入容量单位都设置为1。此外,我在表中插入了20个项目,约占27KB。我使用带有ReturnConsumerCapacity参数的Scan方法。我用Postman测试了它,结果显示它消耗了2.5个容量单位!
为什么 DynamoDB 不拒绝我的请求?我只为两个 RU 分配 1
这是邮差成绩截图
参考-
https://docs.aws.amazon.com/amazondynamodb/latest/developerguide/HowItWorks.ReadWriteCapacityMode.html#HowItWorks.ProvisionedThroughput.Manual
一个读取请求单元表示一个强一致性读取请求或两个最终一致性读取请求,适用于大小不超过 4 KB 的项目。事务读取请求需要 2 个读取请求单元才能对最大 4 KB 的项目执行一次读取。如果您需要读取大于 4 KB 的项目,DynamoDB 需要额外的读取请求单位。所需的读取请求单位总数取决于项目大小,以及您是需要最终一致性读取还是强一致性读取。例如,如果项目大小为 8 KB,则需要 2 个读取请求单位来维持一个强一致性读取,如果选择最终一致性读取,则需要 1 个读取请求单位,事务性读取请求需要 4 个读取请求单位。