实际上,我想在AWS DynamoDB表项上实现验证,如果规则中断了项字段,则应阻止记录插入/更新。
有可能吗?
或者我们可以为dynamoDB表创建一个触发器lambda,它在插入/更新之前触发。这样我们就可以检查验证规则并处理它。
答案 0 :(得分:4)
DynamoDB不支持数据库端项验证。它只验证当你添加一个项目时它应该有你的键的属性(分区键,排序键等),并且它们具有正确的类型。除此之外,DynamoDB不会验证任何内容。
此外,由于DynamoDB是无架构的,并且不对您的属性施加限制,因此它不会检查您的项目具有哪些属性(键是唯一的例外)。
唯一的选择是在将项目保存到DynamoDB之前验证服务器端的项目。
<强>更新强>
我们可以为dynamoDB表创建一个触发器lambda
DynamoDB不支持在项目添加到数据库之前执行的Lambda触发器。目前支持的唯一触发器是DynamoDB流,但是在项之后将其称为,并且它被异步调用,这意味着项目之间存在小的延迟。添加并执行触发器。