考虑到事务能力,documentDB 与 dynamo DB 相比有多好?
以下是使用 dynamoDB 完成的事务操作的示例。
const transactionResponse = await docClient.transactWrite({
TransactItems: [
{
Put: {
TableName: Table1,
Item: {
id,
userId,
anotherID,
createdAt: (new Date()).toISOString()
}
}
},
{
Update: {
TableName: Table2,
Key: {anotherID},
UpdateExpression: `set available = available - :val, count = count + :val, lastUpdatedDate = :updatedAt`,
ExpressionAttributeValues: {
":val": 1,
":updatedAt": (new Date()).toISOString(),
}
}
}
]
}).promise();
是否可以使用 DocumentDB 执行相同的逻辑?我发现,不可能在 AWS documentDB 中进行多语句事务。