Questão nº 40
Questão de Tecnologia da Informação · FGV TJ-MS 2024 (nº 40)
Edgar, DBA de uma multinacional, recebeu um e-mail do usuário A. Nele, o usuário informava que, ao executar uma transação em um registro na tabela de pessoal, obtinha valores incorretos. Pouco tempo depois, recebeu um e-mail do usuário B, no qual este relatava acessar o mesmo registro do usuário A e informava que, às vezes, os dados ficavam incorretos. Edgar identificou que as duas transações acessavam os mesmos itens do banco de dados e tinham problemas em suas serializações, o que tornava o valor do item incorreto.
Edgar identificou um problema chamado:
- Aatualização perdida; (alternativa correta)
- Batualização temporária;
- Cresumo incorreto;
- Dleitura não repetitiva;
- Eleitura suja.
Resposta comentada
Gabarito Alternativa A
Quando várias operações de banco de dados acontecem ao mesmo tempo (concorrência), podem surgir problemas que deixam os dados inconsistentes. Uma transação é um conjunto de operações que deve ser executado completamente ou não ser executado de forma alguma, garantindo a integridade dos dados.
- (A) Correta: Quando duas transações leem o mesmo dado, ambas o modificam, mas a atualização de uma delas é sobrescrita pela outra, resultando na perda da primeira modificação e um valor final incorreto. Isso se encaixa perfeitamente no cenário onde as transações de A e B acessam o mesmo registro e os valores ficam incorretos devido a problemas de serialização.
- (B) Incorreta: Refere-se a uma transação que lê um dado modificado por outra transação que ainda não foi confirmada (commit). Se a transação original for desfeita (rollback), a primeira transação terá lido um valor que nunca existiu de fato. O problema do Edgar não é sobre ler dados temporários, mas sim sobre o valor final do item estar incorreto.
- (C) Incorreta: Ocorre quando uma transação calcula um valor agregado (como soma ou média) enquanto outra transação está modificando os dados que fazem parte desse cálculo, levando a um resultado incorreto. O problema do Edgar envolve um único registro, não um resumo ou agregação.
- (D) Incorreta: Acontece quando uma transação lê o mesmo dado duas vezes e obtém valores diferentes porque outra transação confirmou uma modificação entre as duas leituras. Embora leve a inconsistência para a transação leitora, o cenário do Edgar foca no valor final incorreto do item, não apenas em leituras inconsistentes dentro de uma mesma transação.
- (E) Incorreta: É o mesmo que "atualização temporária", onde uma transação lê um dado que foi modificado por outra transação que ainda não foi confirmada. Se a transação que modificou o dado for desfeita, a leitura se torna "suja" (inválida). O problema descrito é a perda de uma atualização, não a leitura de dados não confirmados.
Fonte: FGV TJ-MS 2024 Técnico de Nível Superior - Analista de Suporte de T.I. (Caderno Tipo 1). Reproduzida para fins de estudo.