Isso ajuda a manter a consistência de seus dados, pois garante que seus dados permaneçam consistentes, mesmo que alguma das operações na transação falhe. Além disso, as transações de várias estaturas no DynamoDB ajudam a evitar problemas como atualizações parciais ou corrupção de dados.
Este artigo explica quais são as transações de várias estaturas do DynamoDB e quando usá-las. Esta redação também fornece um tutorial passo a passo sobre o uso de transações com várias estaturas do DynamoDB e alguns exemplos.
Como usar transações de várias estaturas no dynamoDB
Você pode usar transações com várias declarações do DynamoDB sempre que precisar garantir que várias operações na sua tabela DynamoDB sejam executadas juntas como uma unidade atômica.
Por exemplo, ajuda a atualizar vários registros em uma tabela simultaneamente ou a transferir dados entre duas tabelas de forma mais consistente e confiável. Mas, enquanto isso, verifique se sua mesa está no modo transacional.
Além disso, as operações devem ser executadas usando o TransactwriteItems ou TransactgetItems APIs. A transação será comprometida se todas as operações forem bem -sucedidas e revertidas se alguma das operações falhar.
Além disso, as transações de multi-estatização do DynamoDB têm um limite de 25 operações por transação e um máximo de 4 MB de dados por transação.
Para ativar as transações de múltiplas declarações no DynamoDB, você deve especificar o ID da transação e as operações que precisam ser executadas. DynamoDB garantirá que os processos sejam realizados na ordem correta.
Para usar transações com várias estaturas no DynamoDB, siga estas etapas:
Exemplos de transações de várias estaturas do DynamoDB
Exemplo 1:
Para criar uma transação de várias estaturas no DynamoDB, podemos usar a seguinte sintaxe:
// inicia a transaçãoA transação de múltiplas declarações acima começa com o parâmetro "transactitems" e contém uma variedade de declarações. A primeira declaração é uma operação de atualização. Ele atualiza um item com um ID específico na tabela "myTable" (você precisará especificar o nome da tabela).
A segunda declaração apresenta uma operação de exclusão. Ele pretende excluir um item com um ID específico na mesma tabela. A transação é executada chamando o método "transactwriteItems", que leva os parâmetros de transação como entrada e retorna uma resposta com os resultados da transação.
Exemplo 2:
Nosso segundo exemplo é o seguinte:
var params =
Transactitems: [
Colocar:
TableName: 'Usuários',
Item:
UserID: 'XXX123ABCD',
primeiro nome: 'ken',
Nome do último: 'Brian',
Email: '[email protected] ',
Telefone: 'xxxxxxxxx'
,
Colocar:
TableName: 'Ordens',
Item:
OrderId: 'DFA445D,
UserID: 'XXX123ABCD',
OrderDate: '2022-11-08',
Unid: [
ProductId: '989v3',
Quantidade: 7
]
,
Colocar:
TableName: 'Products',
Item:
ProductId: '989v3',
Nome: 'Nome do produto',
Preço: 210.49
]
;
DynamoDB.transactwrite (params, function (err, dados)
se (err) console.log (err);
caso contrário, console.log (dados);
);
Neste exemplo, criamos várias transações que pretendem colocar um novo usuário, pedido e produto em suas respectivas tabelas do DynamoDB. Se alguma operação falhar, toda a transação será revertida e o sistema não adicionará nenhum dos dados às tabelas.
Conclusão
Embora isso possa ser desconhecido para muitos, são fáceis de usar o DynamoDB Multi-Statement Transactions e ajudarão você a manter a consistência de seus dados. Observe que você não pode usar transações de várias estatamentos em índices globais. No entanto, isso não remove nenhum dos benefícios deste recurso AWS DynamoDB.