Q3
As propriedades ACID(Atomicidade, Consistencia, Isolamento e Durabilidade) sao pilares fundamentais para a confiabilidade das transacoes em bancos de dados relacionais. No entanto, em sistemas distribuidos e de alta escalabilidade, como alguns bancos de dados NoSQL, a "consistencia eventual" é uma abordagem comum.
Considere uma aplicacao de e-commerce que gerencia o estoque de produtos e processa pedidos de clientes. Um cliente adiona um item ao carrinho, e o estoque deve ser atualizado.
I. Se o sistema utilizasse um banco de dados relacional com transacoes ACID, a atomicidade garantiria que a deducao do estoque e a adicao ao pedido seriam uma unica operacao, evitanto que o estoque fosse deduzido sem o pedido ser registrado.
II. Em um banco de dados NoSQL configurado para consistencia eventual, apos a deducao do estoque e a adicao do item ao carrinho, pode haver um pequeno atraso antes que todas as replicas do banco de dados reflitam o novo estado do estoque, o que é aceitavel para um catalogo de produtos, mas problematico para uma transacao de compra.
III. O isolamento em um banco de dados relacional asseguraria que, enquanto um cliente esta processando seu pedido, outro cliente nao possa ver um estoque inconsistente ou fazer um pedido de um item que ja foi "reservado", na mesma transacao.
IV. A durabilidade garantia que, mesmo o sistema de e-commerce falhe imediatamente apos a confirmacao do pedido e a deducao do estoque, essas alteracoes seriam mantidas e nao seriam perdidas.
A III e IV, apenas.
B I e II, apenas.
C I, II e III, apenas.
D I, II, III e IV.
E I, III e IV, apenas.
Ed
há 2 meses
Vamos analisar cada afirmativa: I. Se o sistema utilizasse um banco de dados relacional com transações ACID, a atomicidade garantiria que a dedução do estoque e a adição ao pedido seriam uma única operação, evitando que o estoque fosse deduzido sem o pedido ser registrado. Verdadeiro, a atomicidade assegura que ambas as operações sejam tratadas como uma única transação, garantindo a integridade dos dados. II. Em um banco de dados NoSQL configurado para consistência eventual, após a dedução do estoque e a adição do item ao carrinho, pode haver um pequeno atraso antes que todas as réplicas do banco de dados reflitam o novo estado do estoque, o que é aceitável para um catálogo de produtos, mas problemático para uma transação de compra. Verdadeiro, isso descreve corretamente a natureza da consistência eventual e suas implicações em transações críticas. III. O isolamento em um banco de dados relacional asseguraria que, enquanto um cliente está processando seu pedido, outro cliente não possa ver um estoque inconsistente ou fazer um pedido de um item que já foi "reservado", na mesma transação. Verdadeiro, o isolamento garante que as transações sejam executadas de forma que não interfiram umas nas outras, evitando leituras inconsistentes. IV. A durabilidade garante que, mesmo que o sistema de e-commerce falhe imediatamente após a confirmação do pedido e a dedução do estoque, essas alterações seriam mantidas e não seriam perdidas. Verdadeiro, a durabilidade assegura que as alterações persistam, mesmo em caso de falhas. Agora, considerando que todos os itens (I, II, III e IV) estão corretos, a alternativa que contém todos os itens verdadeiros é: D) I, II, III e IV.