我的表中有一个属性为Document(JSON)的属性,其值为count:
{ "item1" : "5", "item2" : "7" }
DynamoDB Document API是否有办法以原子方式递增地图的值?我的应用程序将有几个主机递增值,因此只使用puts
将无法正常工作,因为它们会相互覆盖。
我知道对于整数属性,我们可以在更新表达式中使用set #count = #count + :countVal
进行原子计数。使用Documents有类似的东西吗?
另外,我注意到DynamoDBMapper
无法进行原子计数器更新,所以我必须使用较低级别的Document API,对吗?
答案 0 :(得分:2)
如果我理解正确,您将其中一个属性作为地图,并在表格中使用键值对。 Dynamodb支持表达式中的文档路径。所以你可以做到
doc.item1 = doc.item1 + :countVal
你是正确的,因为dynamodbmapper不支持原子计数器更新。虽然使用dynamodbmapper和低级API的组合似乎很常见。