Assim, as atualizações condicionais no DynamoDB permitirão apenas atualizar itens em uma tabela apenas se determinadas condições corresponderem. Esse recurso é útil na atualização de itens anatomicamente, pelos quais seu sistema afetará todas ou nenhuma de suas atualizações. Além disso, as atualizações condicionais só serão bem -sucedidas se o item permanecer o mesmo desde a última vez que você leu o item pela última vez.
Esta postagem do blog destaca tudo sobre atualizações condicionais do DynamoDB. Ele descreve como usar atualizações condicionais e fornece exemplos de atualizações condicionais no DynamoDB.
Como usar atualizações condicionais no DynamoDB
Para executar atualizações condicionais no DynamoDB, use a operação do UpdateItem e o parâmetro ConditionExpression. O parâmetro deve tomar a condição que deve ser satisfeita para exigir a aplicação bem -sucedida da atualização. Se o seu sistema não cumprir a condição por um motivo ou outro, a atualização falhará e retornará um erro.
Notavelmente, a operação de atualização também suporta expressões de atualização. Operações com expressões de atualização ajudam a especificar cada modificação que você deve fazer em um item.
Os exemplos de atualização condicional do DynamoDB são os seguintes. Todos os exemplos usam BOTO3, que é o SDK da AWS para Python.
Exemplo 1: Atualizando um item somente se um atributo específico tiver um valor específico.
Atualizações condicionais ajudam a atualizar um item somente se o atributo tiver um valor específico. Um exemplo python do mesmo é mostrado abaixo:
Importar BOTO3Este utilitário atualiza o item com chave primária id = 1234 no My-Table-Name mesa. Ele definirá os valores de atributo1 e atributo2 para 5678 e ABCD, respectivamente. No entanto, a atualização será aplicada apenas se o valor atual de atributo1 é 1234. Se o valor de atributo1 mudou desde que o item foi lido pela última vez, a atualização falhará e seu sistema retornará um erro.
Exemplo 2: Atualizando um item somente se o item tiver um determinado atributo
O código para uma atualização tão condicional é como mostrado:
Importar BOTO3O exemplo acima demonstra como atualizar um item em uma tabela DynamoDB somente se o item tiver um atributo específico. Nesse caso, a expressão de condição verificará a existência do c atributo usando o attribute_exists função. Se o item não tiver o c atributo, a atualização falhará e retornará um erro.
Exemplo 3: Atualizando um item somente se um atributo específico tiver um valor superior a um valor específico.
Por fim, você pode definir seu comando para atualizar um item apenas se um atributo específico for maior que um valor específico. O utilitário python é como mostrado abaixo;
Importar BOTO3A ilustração mostra como atualizar um item em uma tabela de dynamoDB somente se um atributo específico tiver um valor maior que um valor específico. Nesse caso, a expressão da condição verifica se o contar atributo é maior que 15 usando o > operador. Se o contar atributo é no máximo 15, A atualização falhará e você receberá uma mensagem de erro.
Conclusão
O recurso de expressão condicional do DynamoDB é um método poderoso de especificar condições ao atualizar itens em uma tabela. É útil em muitos casos. Por exemplo, você pode usá -lo para garantir que um item seja atualizado apenas se ele não tiver alterado, pois foi lido ou que um item é atualizado apenas se um atributo específico tiver um valor específico.