У меня есть черный список электронной почты, сохраненный как один элемент в DynamoDB
// item example
{
id: "blackList" // PrimaryKey of item
list: [ "email_1@example.com", "email_2@example.com" ]
}
Возможно добавить новое электронное письмо в список и в то же время проверить, если оно еще не представлено в списке (чтобы избежать дублирования)) при атомарном обновлении:
const email = "email_new@example.com";
const params = {
TableName: "myTable",
Key: {
id: "blackList"
},
AttributeUpdates: {
list: {
Action: "ADD",
Value: [email] // several emails can also be added with incorrect Expected check
},
},
Expected: {
list: {
ComparisonOperator: "NOT_CONTAINS",
Value: email
},
}
};
await docClient.update(params).promise();
Вопрос в том, возможно ли выполнить одну и ту же атомарную операцию для нескольких писем одновременно?