Questão de Arquitetura de Software — Banco de Dados — IF-MT 2023
Arquitetura de Software›Banco de Dados
Código
qq952017
Banca
IF-MT
Órgão
IF-MT
Ano
2023
Nível
Superior
Cargo
Analista de Tecnologia da Informação
Considere as seguintes sentenças no âmbito de Banco de Dados:Fonte: DATE, C. J. Introdução a sistemas de banco de dados. Rio de Janeiro: Elsevier, 2003. E-book VitalSource.I. Atomicidade da instrução: O sistema deve garantir que instruções individuais, ou seja, execuções de instruções individuais, sejam atômicas. Essa consideração se torna particularmente significativa em um sistema relacional, no qual as instruções de nível de conjuntos e em geral operam sobre muitas tuplas ao mesmo tempo. Não deve ser possível que uma determinada instrução falhe durante o processo e deixe o banco de dados em um estado incorreto (por exemplo, com algumas tuplas atualizadas e outras não).II. A operação COMMIT indica o término bem-sucedido de uma transação no sistema de log do servidor de banco de dados. Ela informa ao gerenciador de transações que um conjunto de programas foi concluído com sucesso, que o banco de dados está (ou deveria estar) novamente em um estado de aceitação e que todas as atualizações feitas por essa unidade de trabalho podem agora completar a limpeza dos registros de log.III. A operação ROLLBACK assina o término malsucedido de um processo do sistema operacional. Ela informa ao gerenciador de memória que algo saiu errado, que o banco de dados pode estar em um estado incorreto e que o administrador deve reiniciar o SGDB.De acordo com Date (2003, posição 382), indique a alternativa CORRETA.
AApenas a sentença I é verdadeira.
BApenas a sentença II é verdadeira.
CApenas a sentença III é verdadeira.
DApenas as sentenças I e II são verdadeiras.
EApenas as sentenças I e III são verdadeiras.
Revelar gabarito e comentário▾
GabaritoA — Apenas a sentença I é verdadeira.
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”.
Banco de Dados - Transações ACID
Gabarito: letra A (apenas a sentença I é verdadeira). A atomicidade da instrução descrita em I está correta: o SGBD deve garantir que cada instrução individual (mesmo operando sobre várias tuplas) seja atômica, não deixando o banco em estado parcial. As sentenças II e III contêm erros conceituais sobre COMMIT e ROLLBACK, respectivamente.
Sentença I — ✅ Correta
Descreve corretamente a atomicidade da instrução em bancos relacionais: operações sobre conjuntos de tuplas devem ser indivisíveis. Se uma instrução falha no meio, o banco não pode ficar com algumas tuplas atualizadas e outras não. Isso é coerente com a propriedade ACID de atomicidade e com a definição de Date.
Sentença II — ❌ Incorreta
A operação COMMIT indica o término bem-sucedido de uma transação, não de um "conjunto de programas". Após o COMMIT, as alterações são tornadas permanentes (durabilidade), mas a "limpeza dos registros de log" não é função do COMMIT; o log é gerenciado separadamente. Além disso, o COMMIT é uma instrução que o aplicativo envia ao SGBD, não uma notificação ao gerenciador de transações após a conclusão.
Sentença III — ❌ Incorreta
ROLLBACK não assina o término malsucedido de um processo do sistema operacional, mas de uma transação. Ele informa ao gerenciador de transações (não ao gerenciador de memória) que a transação deve ser desfeita. O banco de dados é restaurado a um estado consistente automaticamente, sem necessidade de reinicialização do SGBD.
Propriedades ACID
1Atomicidade
Instrução individual é atômica
Operação sobre várias tuplas
Falha não deixa estado parcial
2COMMIT
Término bem-sucedido da transação
Alteraçōes permanentes (durabilidade)
Não limpa registros de log
Não notifica após conclusão
3ROLLBACK
Desfaz a transação
Restaura estado consistente
Não é de processo do SO
Não reinicia o SGBD
LEVEL · soulevel.com.br
NÃO CAIA NESSA!
A banca mistura conceitos de transação com conceitos de sistema operacional e gerenciamento de memória, além de inventar funções para COMMIT e ROLLBACK (limpeza de log e reinicialização). Fique atento: COMMIT torna permanente; ROLLBACK desfaz. Nenhum deles envolve limpeza de log ou reinício do SGBD.