首页 > 解决方案 > 没有更新任何内容时如何对 DynamoDB UpdateItem 调用收费?

问题描述

如果我执行 DynamoDB 命令来更新项目并且该项目已经存在并且没有要更新的内容,那么 DynamoDB 是否将其视为写入操作或读取操作?

在我的场景中,我需要跟踪客户在当月是否发生了任何请求,如果是,请写一行。我不需要记数。因此,我最多每个客户每月写一行,但我需要每月进行数千次甚至数百万次的检查。

标签: amazon-dynamodb

解决方案


DynamoDB 始终根据您正在执行的操作类型收费,因此更新将始终使用 WCU。您可以通过执行一个实验来验证这一点,在该实验中重复更新现有项目而不进行任何更改,然后检查您的已用容量。

如果由于 ConditionExpression 而导致写入失败,则该操作将产生 1 个 WCU 的成本。否则,该操作将使用写入整个项目所需的 WCU 数量,而不管更新了多少属性。


推荐阅读