我有一个字段,它是字典列表。
{
"messages": [item1, item2....]
}
多个主机将向该列表附加项目。
是否需要考虑任何因素来确保原子追加?
最佳答案
同时使用 list_append()
和 if_not_exists()
附加到可能不存在的列表列:
var params = {
TableName: "yourTableName",
Key: { hash: "someId" },
UpdateExpression: "set #messages = list_append(if_not_exists(#messages, :empty_list), :message)",
ExpressionAttributeNames: {
"#messages": "messages"
},
ExpressionAttributeValues: {
":message": [{ "id": "1","foo": "bar" }],
":empty_list": []
}
};
关于amazon-dynamodb - 以原子方式将项目追加到 DynamoDB 列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40926668/