Questão de Banco de Dados — Recuperação de falhas — FCC 2019
Banco de Dados›Recuperação de falhas
Código
fc056952
Banca
FCC
Órgão
SEMEF de Manaus - AM
Ano
2019
Cargo
SEMEF Manaus - AM - Técnico de Tecnologia da Informação da Fazenda Municipal
Um projeto da Fazenda Municipal sobre a recuperação de bancos de dados vai aplicar a técnica da recuperação adiada, na qual as alterações observadas no banco de dados são salvas
Aapós o encerramento da seção corrente do banco de dados.
Bapenas quando o usuário titular da seção solicitar tal ação, explicitamente.
Capós a transação responsável pelas alterações ter sido executada completamente.
Dimediatamente após qualquer modificação feita no banco de dados, ainda que a transação responsável pelas alterações não tenha chegado a seu ponto final.
Equando o buffer utilizado para armazenar as transações efetuadas estiver com 80% de sua capacidade preenchida.
Revelar gabarito e comentário▾
GabaritoC — após a transação responsável pelas alterações ter sido executada completamente.
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”.
Recuperação de Banco de Dados — Técnica de Recuperação Adiada (Deferred Update)
Gabarito: letra C. Na técnica de recuperação adiada (deferred update), as alterações realizadas por uma transação são registradas inicialmente em buffers ou logs, mas só são efetivamente salvas no banco de dados após a transação ser completamente executada e confirmada (comando COMMIT). Esse comportamento garante a atomicidade e a durabilidade das transações, pois se a transação falhar, as alterações podem ser descartadas sem impacto no banco. A alternativa C descreve exatamente esse momento: "após a transação responsável pelas alterações ter sido executada completamente".
A recuperação adiada contrasta com a recuperação imediata (immediate update), na qual as alterações são gravadas no banco de dados antes mesmo do fim da transação, o que exige operações de undo em caso de falha. A alternativa D representa essa abordagem oposta.
Técnica de Recuperação
Momento do Salvamento das Alterações
Garantia de Atomicidade
Exige Operação de Undo
Recuperação Adiada (Deferred Update)
Após a transação ser executada completamente (COMMIT)
Sim, pois alterações são descartadas se a transação falhar
Não
Recuperação Imediata (Immediate Update)
Imediatamente após cada modificação, antes do fim da transação
Sim, mas exige undo em caso de falha
Sim
1Transação inicia
2Alterações em buffer/log
3Transação completa (COMMIT)
4Alterações salvas no BD
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que as alterações são salvas "após o encerramento da seção corrente do banco de dados". A sessão (conexão) pode terminar sem que a transação tenha sido confirmada ou mesmo sem que ela tenha sido finalizada. O salvamento é atrelado ao fim da transação (commit), não ao fim da sessão.
Alternativa B — ❌ Incorreta
Propõe que o salvamento ocorre "apenas quando o usuário titular da seção solicitar tal ação, explicitamente". Embora o usuário possa emitir um COMMIT explícito, a alternativa elimina a possibilidade de commits automáticos ou o fim normal da transação. Além disso, a técnica de recuperação adiada não depende de solicitação explícita do usuário; o salvamento é disparado pelo sistema quando a transação termina com sucesso.
Alternativa C — ✅ Correta ⟵ GABARITO
"Após a transação responsável pelas alterações ter sido executada completamente." Exatamente o que define a recuperação adiada: as alterações são mantidas em buffer/log durante a execução e só são persistidas no banco de dados quando a transação atinge o estado de committed (efetivada).
Alternativa D — ❌ Incorreta
Descreve o cenário oposto: "imediatamente após qualquer modificação feita no banco de dados, ainda que a transação responsável pelas alterações não tenha chegado a seu ponto final." Essa é a característica da recuperação imediata (immediate update), não da adiada. Na imediata, se a transação falhar após algumas escritas, é necessário desfazê-las (UNDO).
Alternativa E — ❌ Incorreta
Condiciona o salvamento ao preenchimento de 80% do buffer. Não há relação entre a técnica de recuperação adiada e um percentual fixo de ocupação de buffer. O que define o momento de escrita é o fim da transação, não o nível de enchimento do buffer.
PEGA ESSA DICA!
Para fixar, lembre-se da diferença central:
Recuperação adiada (deferred): writes só após o commit → não precisa de UNDO, apenas REDO.
Recuperação imediata (immediate): writes podem ocorrer antes do commit → precisa de UNDO e REDO.