Questão de Banco de Dados — Transações (Locks, ACID, etc.) — Avança SP 2024
Banco de Dados›Transações (Locks, ACID, etc.)
Código
qa630767
Banca
Avança SP
Órgão
CM Itapecerica Serra
Ano
2024
Cargo
Tec ( )
Todo banco de dados do SQL Server tem um log de transações que registra todas as transações e as modificações feitas no banco de dados por cada transação. Qual o principal propósito de suas operações básicas?
AReportar todas as transações para análise de custo do hardware utilizado.
BDar suporte a outras ferramentas externas para reintroduzir padrões de autenticação no banco de dados
CColeta de informações para reuniões administrativas sobre o uso da plataforma específica.
DPrevenir falha de transações ou do sistema, incorporando dados ao seu estado original para a integridade dos dados.
EExecutar um Replace das transações em caráter legislativo.
Revelar gabarito e comentário▾
GabaritoD — Prevenir falha de transações ou do sistema, incorporando dados ao seu estado original para a integridade dos dados.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Log de transações no SQL Server: propósito fundamental
Gabarito: letra D. O log de transações de um banco de dados tem como principal propósito garantir a integridade dos dados, permitindo que, em caso de falha de transação ou do sistema, o banco seja restaurado ao seu estado original — é exatamente isso que a alternativa D descreve. Essa função está diretamente ligada às propriedades ACID (Atomicidade, Consistência, Isolamento e Durabilidade), que regem o comportamento das transações em um SGBD.
O log de transações é um arquivo sequencial que registra cada operação realizada por uma transação, antes mesmo de ela ser efetivada no banco. Ele funciona como um "diário" do banco de dados: tudo o que acontece é anotado, para que, se algo der errado, seja possível desfazer (rollback) ou refazer (redo) as operações. Esse mecanismo é a base do subsistema de recuperação do SGBD, que garante a atomicidade e a durabilidade das transações.
Para entender por que o log é tão importante, é preciso compreender as propriedades ACID. A atomicidade garante que uma transação seja tratada como uma unidade indivisível: ou todas as suas operações são executadas com sucesso (commit), ou nenhuma delas é refletida no banco (rollback). A consistência assegura que o banco passe de um estado válido para outro estado válido, respeitando todas as regras de integridade. O isolamento impede que transações concorrentes interfiram umas nas outras. E a durabilidade garante que, uma vez confirmada, a transação permaneça gravada mesmo após uma falha do sistema.
O log de transações é o instrumento que viabiliza a atomicidade e a durabilidade. Quando uma transação é iniciada, o SGBD registra no log cada operação de escrita. Se ocorrer uma falha antes do commit, o log permite desfazer as alterações parciais, restaurando o estado anterior — é o rollback. Se a transação foi confirmada (commit) mas o sistema caiu antes de gravar os dados no disco, o log permite refazer as operações — é o redo. Em ambos os casos, o objetivo é o mesmo: manter a integridade dos dados, levando o banco de volta a um estado consistente.
Um exemplo clássico é a transferência bancária: debitar R$ 100 da conta A e creditar R$ 100 na conta B. Se o sistema falhar após debitar A, mas antes de creditar B, o log registra a operação incompleta. Ao reiniciar, o SGBD usa o log para desfazer o débito, restaurando o saldo original de A. Sem o log, o banco ficaria em um estado inconsistente, com o dinheiro "sumindo" da conta A sem chegar à conta B.
A pegadinha desta questão está em confundir o propósito do log com funções administrativas, de auditoria ou de ferramentas externas. O log não existe para relatórios de custo, reuniões administrativas ou autenticação — ele existe para garantir a recuperação de falhas e a integridade dos dados. Guarde essa distinção: o log é um mecanismo técnico de recuperação, não uma ferramenta de gestão ou segurança.
1Transação inicia
2Operações registradas no log
3Falha antes do commit
4Rollback (desfaz parcial)
5Estado original restaurado
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que o log serve para "reportar todas as transações para análise de custo do hardware utilizado". Isso não corresponde à função do log. O log registra operações de dados para fins de recuperação, não para análise de custo de hardware. A banca tenta confundir o candidato associando o log a uma finalidade administrativa/financeira, que não existe.
Alternativa B — ❌ Incorreta
Diz que o log serve para "dar suporte a outras ferramentas externas para reintroduzir padrões de autenticação no banco de dados". O log não tem relação com autenticação. Autenticação é um mecanismo de segurança que verifica a identidade de usuários, controlado pelo SGBD de forma independente do log de transações. A banca mistura conceitos de segurança com recuperação de dados.
Alternativa C — ❌ Incorreta
Afirma que o log serve para "coleta de informações para reuniões administrativas sobre o uso da plataforma específica". Novamente, uma finalidade administrativa que não corresponde à função técnica do log. O log não é uma ferramenta de monitoramento de uso ou de gestão; é um mecanismo de recuperação de falhas.
Alternativa D — ✅ Correta ⟵ GABARITO
Esta é a alternativa correta. O log de transações existe para "prevenir falha de transações ou do sistema, incorporando dados ao seu estado original para a integridade dos dados". Isso descreve exatamente a função de recuperação: em caso de falha, o log permite restaurar o banco ao estado consistente anterior, garantindo a integridade. Essa é a essência das propriedades de atomicidade e durabilidade do ACID.
Alternativa E — ❌ Incorreta
Diz que o log serve para "executar um Replace das transações em caráter legislativo". Essa alternativa é claramente absurda e sem sentido técnico. "Replace" e "caráter legislativo" não têm relação alguma com banco de dados ou log de transações. É um distrator que testa se o candidato conhece o mínimo do assunto.
NÃO CAIA NESSA!
A banca tenta induzir o candidato a associar o log de transações a funções administrativas (custos, reuniões, autenticação) em vez de sua função técnica real. O log é um mecanismo de recuperação de falhas, não uma ferramenta de gestão. Lembre-se: log = recuperação e integridade, nada mais.
PEGA ESSA DICA!
Para questões sobre log de transações, foque nas propriedades ACID. O log é o instrumento que garante a atomicidade (rollback de transações incompletas) e a durabilidade (redo de transações confirmadas). Se a alternativa mencionar custo, reunião, autenticação ou qualquer função administrativa, descarte-a imediatamente.