我无法在亚马逊上找到这方面的文档:有人知道删除操作是否会影响您的读取或写入容量?
我原本以为它会算作“写”,但我在测试中看到的行为似乎表明相反。有人可以证实这一点吗?
答案 0 :(得分:13)
好问题 - 虽然这似乎没有明确指出,但仍有两个强有力的暗示被视为写操作(正如人们所期望的那样):
1)Provisioned Throughput Guidelines in Amazon DynamoDB中的时间序列数据和访问模式部分解决了有效删除问题,并且指的是受影响的写入吞吐量:
删除整个表比删除更有效 逐个项目,这使写入吞吐量基本上翻了一番 你执行与put操作一样多的删除操作。
2)DeleteItem API中的响应部分列出了返回值 ConsumedCapacityUnits 并引用了写入容量单位:
操作消耗的写入容量单位数。这个 value显示应用于预配置吞吐量的数字。对于 更多信息,请参阅Provisioned Throughput in Amazon DynamoDB。
答案 1 :(得分:2)
是的,确实。文件清楚地说:
PutItem
,UpdateItem
和DeleteItem
允许条件写入,其中 您指定一个必须求值为true的表达式 操作成功。如果表达式的计算结果为false,则为DynamoDB 仍将使用表格中的写入容量单位:
如果项目存在,则消耗的写入容量单位数 取决于项目的大小。(例如,条件失败 写入1 KB项目将消耗一个写入容量单位;如果 item是该大小的两倍,失败的条件写入将消耗 两个写容量单位。)
如果该项目不存在,DynamoDB将会 消耗一个写入容量单位。