Questão de Banco de Dados — Recuperação de falhas — FGV 2026
Banco de Dados›Recuperação de falhas
Código
fg131892
Banca
FGV
Órgão
PC-PI
Ano
2026
Nível
Superior
Cargo
Perito Criminal - Informática Forense
Em atividades investigativas policiais, a confiabilidade, a rastreabilidade e a integridade de registros armazenados em Sistemas Gerenciadores de Bancos de Dados (SGBDs) são essenciais para reconstrução de linhas do tempo, identificação de autoria de ações e preservação da cadeia de custódia digital. Nesse contexto, as técnicas FORCE/NO-FORCE e STEAL/NO-STEAL, que definem as políticas de escrita em disco e de gerenciamento do buffer, determinam a necessidade de operações de UNDO e REDO durante a recuperação de falhas e influenciam diretamente a consistência das evidências digitais.Considerando essas técnicas e seus efeitos sobre a persistência de páginas modificadas em sistemas gerenciadores de bancos de dados, pode-se afirmar que a técnica
AFORCE de REDO será necessário durante a recuperação para garantir a durabilidade da transação.
BFORCE define com o valor 1 (ou seja, preso) um bit de presosolto, sinalizando que um buffer de cache não pode ser gravado de volta no disco.
CSTEAL aplica-se quando gerenciador de cache necessitar de um quadro do buffer para outra transação e o gerenciador de buffer substituir uma página existente previamente atualizada de uma transação não confirmada.
DSTEAL tem como consequência demandar grandes espaços de buffer para o armazenamento de todas as páginas atualizadas na memória; assim como NO-FORCE garante o isolamento de transações concorrentes
ENO-STEAL é utilizada em esquemas de recuperação imediata como o utilizado no modelo ARIES, dado que as alterações promovidas por uma transação em uma página persistirão no disco, garantindo a consistência dos efeitos da transação.
Revelar gabarito e comentário▾
GabaritoC — STEAL aplica-se quando gerenciador de cache necessitar de um quadro do buffer para outra transação e o gerenciador de buffer substituir uma página existente previamente atualizada de uma transação não confirmada.
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”.
Técnicas de recuperação: STEAL/NO-STEAL e FORCE/NO-FORCE
Gabarito: letra C. A alternativa C descreve corretamente a política STEAL, em que uma página suja (modificada por transação não confirmada) é substituída no buffer para liberar espaço, sendo gravada no disco antes da confirmação. Isso exige operações UNDO durante a recuperação. As demais alternativas confundem ou invertem os conceitos.
As políticas de gerenciamento de buffer determinam quando páginas modificadas são escritas no disco e se páginas de transações não confirmadas podem ser substituídas. As combinações definem a necessidade de UNDO e REDO:
Política
Descrição
Impacto na recuperação
STEAL
Página suja de transação não confirmada pode ser escrita no disco
Requer UNDO para desfazer transações que falharam
NO-STEAL
Página suja de transação não confirmada não é escrita no disco
Não requer UNDO (apenas REDO para transações confirmadas)
FORCE
Todas as páginas sujas são escritas no disco antes da confirmação
Não requer REDO (garante durabilidade no commit)
NO-FORCE
Páginas sujas podem permanecer no buffer após confirmação
Requer REDO para transações confirmadas cujas alterações não foram persistidas
STEAL
NO-STEAL
NO-FORCE
UNDO + REDO
Só REDO
FORCE
Só UNDO
Nenhum
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Afirma que FORCE exige REDO. Na verdade, FORCE elimina a necessidade de REDO, pois as páginas já estão no disco no momento da confirmação. O REDO é necessário na política NO-FORCE.
Alternativa B — ❌ Incorreta
Menciona um "bit de presosolto" com valor 1 que impede a gravação em disco. Isso não corresponde à definição de FORCE. O bit de pinned (preso) impede que uma página seja substituída no buffer, mas FORCE é a política de escrita na confirmação, não um bit. A descrição é incoerente e não reflete o conceito.
Alternativa C — ✅ Correta ⟵ GABARITO
A descrição corresponde exatamente à política STEAL: quando o gerenciador de buffer precisa de um quadro para outra transação, ele substitui (escreve no disco) uma página que foi atualizada por uma transação ainda não confirmada. Essa é a definição clássica de STEAL, que exige UNDO.
Alternativa D — ❌ Incorreta
Afirma que STEAL demanda grandes buffers. Na verdade, STEAL libera buffers rapidamente, reduzindo a necessidade de espaço. Já NO-STEAL exige buffers maiores, pois as páginas sujas não podem ser substituídas. Além disso, associar NO-FORCE ao isolamento de transações concorrentes é incorreto: isolamento é função do controle de concorrência, não da política de escrita.
Alternativa E — ❌ Incorreta
Afirma que NO-STEAL é usado no modelo ARIES. O ARIES utiliza STEAL/NO-FORCE (atualização imediata com write-ahead logging). NO-STEAL impediria a substituição de páginas sujas, o que não é compatível com a recuperação imediata do ARIES. A afirmação também diz que "alterações persistirão no disco" – em NO-STEAL, páginas de transações não confirmadas não vão para o disco, então não há persistência antes do commit.
NÃO CAIA NESSA!
A banca troca as políticas e suas consequências, principalmente associando ARIES a NO-STEAL (quando na verdade é STEAL). Decore a tabela acima e lembre: ARIES = STEAL/NO-FORCE (requer UNDO e REDO).