Um dos protocolos que garante a serialização é o protocolo d...
Gabarito comentado
Confira o gabarito comentado por um dos nossos professores
Alternativa correta: C - em duas fases.
O protocolo de bloqueio em duas fases, ou 2PL (Two-Phase Locking), é um mecanismo fundamental na garantia da serialização das transações em um sistema de gerenciamento de banco de dados. A serialização é o conceito de garantir que as transações sejam executadas de uma maneira que o resultado seja o mesmo que se elas fossem executadas sequencialmente, uma após a outra, evitando assim problemas como inconsistência de dados e conflitos de concorrência.
Este protocolo é dividido em duas fases distintas:
- Fase de Crescimento: onde todas as travas (locks) necessárias são adquiridas e nenhuma trava é liberada. Durante esta fase, a transação pode obter travas, mas não pode liberar nenhuma trava que tenha adquirido.
- Fase de Decrescimento: onde as travas adquiridas são liberadas e nenhuma nova trava pode ser adquirida. Uma vez que a transação libera uma trava, ela entra na fase de decrescimento e não pode obter mais travas.
Essa metodologia previne a ocorrência de certos tipos de anomalias de concorrência, como o deadlock (ou impasse), e garante uma das propriedades fundamentais de transações chamada isolamento, que, juntamente com a atomicidade, consistência e durabilidade, forma o conceito conhecido como ACID.
A alternativa correta é a C porque descreve exatamente esse protocolo dividido em duas fases, que assegura a ordem de travamento e liberação de recursos de modo a garantir uma execução segura e sem conflitos entre transações concorrentes.
Clique para visualizar este gabarito
Visualize o gabarito desta questão clicando no botão abaixo
Comentários
Veja os comentários dos nossos alunos
A execução simultânea das transações deve ter o mesmo efeito de uma execução serial, uma após a outra, sem sobreposição. Estas execuções são chamadas de escalonamento serializáveis, significando "ter o mesmo efeito de uma execução serial". O mecanismo mais popular usado para se obter escalonamentos serializáveis é bloqueio.
Protocolo de Bloqueio em Duas Fases (2PL) Para garantir um escalonamento serializável, o protocolo de Bloqueio em Duas Fases (2PL) deve ser empregado.
Fonte: https://www.maxwell.vrac.puc-rio.br/20236/20236_3.PDF
GAB C
- Um dos protocolos que garante a serialização é o protocolo de bloqueio em duas fases.
- Protocolo de bloqueio em duas fases é usado em SGBD para garantir a serialização de transações concorrentes. A serialização garante que as transações sejam executadas de forma isolada e consistente, sem interferências mútuas.
- Protocolo de bloqueio em duas fases: fase de crescimento/fase de bloqueio; e fase de encolhimento/fase de desbloqueio.
c-
serialização é um dos objetivos do 2-stage lock.
A transaction is said to follow the Two-Phase Locking protocol if Locking and Unlocking can be done in two phases.
Growing Phase: New locks on data items may be acquired but none can be released.
Shrinking Phase: Existing locks may be released but no new locks can be acquired.
Note: If lock conversion is allowed, then upgrading of lock( from S(a) to X(a) ) is allowed in the Growing Phase, and downgrading of lock (from X(a) to S(a)) must be done in the shrinking phase.
https://www.geeksforgeeks.org/two-phase-locking-protocol/
Clique para visualizar este comentário
Visualize os comentários desta questão clicando no botão abaixo