Amazon dynamodb 我应该在发送之前检查DynamoDB映射更新路径吗

Amazon dynamodb 我应该在发送之前检查DynamoDB映射更新路径吗,amazon-dynamodb,Amazon Dynamodb,我将数据作为映射属性类型存储在DynamoDB中,并实现一个restful补丁端点来修改该数据(rfc6902) 在我的验证例程中,在将补丁转换为更新表达式并将其发送到DynamoDB之前,我目前无法确保映射存在 这意味着,如果尚未在DynamoDB中设置映射,则更新将失败(ValidationException,因为文档路径不存在) 我的问题:依赖DynamoDB以这种方式拒绝更新是合适的/可以接受的/可以的,还是应该在我自己的验证例程中获得项目的副本并拒绝补丁 我一直想不出一个理由不让Dyn

我将数据作为映射属性类型存储在DynamoDB中,并实现一个restful补丁端点来修改该数据(rfc6902)

在我的验证例程中,在将补丁转换为更新表达式并将其发送到DynamoDB之前,我目前无法确保映射存在

这意味着,如果尚未在DynamoDB中设置映射,则更新将失败(ValidationException,因为文档路径不存在)

我的问题:依赖DynamoDB以这种方式拒绝更新是合适的/可以接受的/可以的,还是应该在我自己的验证例程中获得项目的副本并拒绝补丁


我一直想不出一个理由不让DynamoDB享受拒绝补丁的乐趣(这为我节省了一个GET调用),但依赖这样的第三方验证让我有点紧张(尽管我们现在在访问AWS时指定了API版本,所以理论上这应该总是有效的…)

这似乎是一个非常主观的问题,但就我个人而言,我不认为通过向DynamoDB添加额外的往返来进行您自己的验证有什么好处,而在我看来,最糟糕的情况是DynamoDB的后续更新。这与将返回成功的本地数据库更新视为权威数据库没有区别


如果您担心长期的向后兼容性(例如,DynamoDB API合同从您下面更改)然后,希望您已经编写了一些定期运行的功能/集成测试,特别是在您更新软件依赖项时。

同意这有点主观-我的目的是看看是否对这类行为有普遍共识。你的想法反映了我自己的想法,我感谢你的回应。