DynamoDB的DeleteItem操作是读一致性吗?

0

【以下的问题经过翻译处理】 亲爱的专家们,

DynamoDB的GetItem操作可以是一致性读取,也可以是非一致性读取。但是在DeleteItem操作中不存在相应的设置。那么DeleteItem操作是一致性的吗?

即,如果一个连接执行了PutItem操作,然后另一个连接使用相同的键执行了DeleteItem操作,那么刚刚添加的项目是否确实被删除?

在我的情况下,我使用SetReturnValues(ALL_OLD)来读取和删除项目,是否有任何区别?

谢谢,Phil。

profile picture
专家
已提问 9 个月前18 查看次数
1 回答
0

【以下的回答经过翻译处理】 一致性是与读操作有关的术语。所有写操作都是原子操作,并按照接收的顺序出现,因此,如果您在PutItem之后调用DeleteItem,那么它保证会被删除。

然而,如果您先调用DeleteItem,然后是PutItem,那么项目将存在,因为PutItem是最后一个调用的事件。您可以在PutItem中添加逻辑,使用ConditionExpression仅在不存在时才进行写入。

profile picture
专家
已回答 9 个月前

您未登录。 登录 发布回答。

一个好的回答可以清楚地解答问题和提供建设性反馈,并能促进提问者的职业发展。

回答问题的准则