Pular para o conteúdo principal

Questão de Banco de Dados — SGBD - Sistema de Gerenciamento de Banco de Dados — FUNDATEC 2023

Banco de DadosSGBD - Sistema de Gerenciamento de Banco de Dados
Código
qq896947
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Suporte de Banco de Dados
Assinale a alternativa que descreve corretamente características do protocolo 2PL (bloqueio de duas fases) para controle de concorrência em SGBDs.
  1. AProtocolo de bloqueio pessimista que determina que todos os bloqueios (locks) são adquiridos na primeira fase da transação e, após liberar locks, a transação entra numa fase em que não pode mais adquirir locks.
  2. BProtocolo de bloqueio pessimista que determina que todos os bloqueios (locks) são adquiridos na primeira fase da transação, e eles são liberados em ordem randômica para otimizar a performance.
  3. CProtocolo de bloqueio otimista em que se adquirem locks sobre todos os recursos necessários na primeira fase de transação e, após liberar locks, a transação entra numa fase em que não é permitido requisitar bloqueios sobre quaisquer recursos.
  4. DProtocolo de bloqueio que apenas pode ser executado em transações read-only.
  5. EProtocolo de bloqueio que só é efetivo em prevenir deadlocks em SGBDs.
Revelar gabarito e comentário

GabaritoA — Protocolo de bloqueio pessimista que determina que todos os bloqueios (locks) são adquiridos na primeira fase da transação e, após liberar locks, a transação entra numa fase em que não pode mais adquirir locks.

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”.

Protocolo 2PL (Two-Phase Locking) – Controle de Concorrência

Gabarito: letra A. O protocolo 2PL (bloqueio em duas fases) é um mecanismo pessimista de controle de concorrência que possui duas fases bem definidas: na primeira (fase de crescimento ou expansão), a transação adquire todos os bloqueios necessários; na segunda (fase de encolhimento), após iniciar a liberação de bloqueios, a transação não pode mais adquirir novos bloqueios. Essa descrição corresponde exatamente à alternativa A.

A banca testa o conhecimento conceitual do 2PL básico, distinguindo-o de variações (2PL conservador, estrito, rigoroso) e de outros protocolos. A principal armadilha é confundir as características do 2PL com ideias incorretas, como ordem randômica de liberação, abordagem otimista, restrição a transações read-only ou efeito sobre deadlocks.

  1. 11ª fase: CrescimentoAdquire todos os locks necessários
  2. 22ª fase: EncolhimentoLibera locks; não adquire novos
LEVEL · soulevel.com.br

Alternativa A — ✅ Correta ⟵ GABARITO

Descreve precisamente o protocolo 2PL básico (bloqueio pessimista) com suas duas fases: fase de expansão (aquisição de locks) e fase de encolhimento (liberação de locks, sem possibilidade de adquirir novos). Conforme o conteúdo de apoio sobre controle de concorrência, "Bloqueio em duas fases (2PL) ... fase de encolhimento (segunda), fase de expansão (primeira)", e o protocolo determina que todos os bloqueios são adquiridos na primeira fase e, após liberar, não se adquirem novos. Correta.

Alternativa B — ❌ Incorreta

Afirma que os bloqueios são liberados "em ordem randômica para otimizar a performance". No 2PL básico, a ordem de liberação não é determinada por critério de otimização; a regra é que, uma vez iniciada a liberação, a transação não pode mais adquirir bloqueios. A ordem dos unlocks pode ser qualquer, mas não é uma característica definida como "ordem randômica para otimizar". O erro está em atribuir um propósito de otimização que não faz parte da definição do protocolo.

Alternativa C — ❌ Incorreta

Classifica o 2PL como "protocolo de bloqueio otimista". O 2PL é essencialmente pessimista: os bloqueios são adquiridos antecipadamente para garantir o isolamento. Protocolos otimistas, por outro lado, permitem a execução sem bloqueios e validam a serialização no final. O erro é a troca do paradigma (pessimista vs. otimista).

Alternativa D — ❌ Incorreta

Restringe a aplicação do 2PL a "transações read-only". O 2PL é utilizado para qualquer tipo de transação (leitura e/ou gravação). Transações read-only podem usar bloqueios compartilhados, mas o protocolo não se limita a elas.

Alternativa E — ❌ Incorreta

Afirma que o 2PL "só é efetivo em prevenir deadlocks". Na realidade, o 2PL não previne deadlocks; ele pode causá-los, pois as transações adquirem bloqueios gradativamente, podendo gerar espera circular. Para lidar com deadlocks, são necessários mecanismos adicionais como detecção e prevenção (ex.: 2PL conservador). A afirmação é falsa.

NÃO CAIA NESSA!

A banca explora a troca de características entre protocolos: a alternativa B insere uma falsa otimização (ordem randômica); a C troca pessimista por otimista; a D restringe o escopo indevidamente; e a E atribui ao 2PL um benefício (prevenção de deadlocks) que ele não possui. Fique atento: no 2PL, a fase de expansão e encolhimento é rígida quanto à aquisição de novos locks, mas a liberação não segue ordem especial. Na prova, lembre-se sempre: 2PL é pessimista, não otimista; não se limita a read-only; e não previne deadlocks – pode gerá-los.

Gabarito: letra A.

Link permanente: /questoes/qq896947