Pular para o conteúdo principal

Questão de Banco de Dados — Gerência de Transações — CESPE / CEBRASPE 2025

Banco de DadosGerência de Transações
Código
ce195371
Banca
CESPE / CEBRASPE
Órgão
BANRISUL
Ano
2025
Nível
Superior
Cargo
Técnico em Tecnologia da Informação II - Área: Administração de Banco de Dados
Assinale a opção correta acerca do protocolo 2PC (two-phase commit).
  1. AO protocolo 2PC garante a atomicidade em transações distribuídas ao coordenar commit ou abort entre participantes.
  2. BO referido protocolo elimina totalmente o risco de bloqueio em caso de falha do coordenador.
  3. CEsse protocolo é utilizado apenas em sistemas baseados em bancos de dados relacionais centralizados.
  4. DO uso desse protocolo impede a necessidade de logs nos participantes das transações.
  5. EO protocolo 2PC exige que todos os participantes liberem seus bloqueios antes da fase de commit.
Revelar gabarito e comentário

GabaritoA — O protocolo 2PC garante a atomicidade em transações distribuídas ao coordenar commit ou abort entre participantes.

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 2PC (two-phase commit)

Gabarito: letra A. O protocolo 2PC (two-phase commit) tem como principal objetivo garantir a atomicidade em transações distribuídas, coordenando todos os participantes para que todos realizem commit ou todos realizem abort. As demais alternativas apresentam incorreções sobre características do protocolo.

O 2PC é um protocolo de consenso utilizado em sistemas de bancos de dados distribuídos para assegurar que uma transação seja concluída de forma atômica em todos os nós participantes. Ele opera em duas fases: na primeira (prepare), o coordenador solicita que cada participante se prepare para confirmar a transação; na segunda (commit/abort), o coordenador decide se confirma ou desfaz a transação com base nas respostas recebidas.

Alternativa A — ✅ Correta ⟵ GABARITO

Afirma que o 2PC garante atomicidade ao coordenar commit ou abort entre participantes. Isso está correto. O protocolo foi projetado exatamente para isso: assegurar que todos os nós envolvidos na transação cheguem a um acordo único (todos confirmam ou todos desfazem), mesmo em caso de falhas.

Alternativa B — ❌ Incorreta

Afirma que o protocolo elimina totalmente o risco de bloqueio em caso de falha do coordenador. Na realidade, o 2PC é um protocolo bloqueante: se o coordenador falha após a fase de prepare, os participantes podem ficar bloqueados até que o coordenador se recupere ou um timeout seja atingido. Portanto, ele não elimina o risco de bloqueio.

Alternativa C — ❌ Incorreta

Afirma que o 2PC é utilizado apenas em bancos de dados relacionais centralizados. Na verdade, o 2PC é empregado em sistemas de banco de dados distribuídos, onde as transações envolvem múltiplos nós. Sistemas centralizados não necessitam de 2PC, pois não há coordenação entre múltiplos sites.

Alternativa D — ❌ Incorreta

Afirma que o uso do 2PC impede a necessidade de logs nos participantes. Pelo contrário, tanto o coordenador quanto os participantes mantêm logs para registrar o estado da transação (prepared, committed, aborted). Esses logs são essenciais para recuperação em caso de falhas, permitindo que cada nó saiba em que estado estava e prossiga adequadamente.

Alternativa E — ❌ Incorreta

Afirma que todos os participantes devem liberar seus bloqueios antes da fase de commit. No 2PC, os bloqueios (locks) são mantidos durante toda a transação até que a decisão final seja tomada. Eles só são liberados após o commit ou abort ser concluído, para garantir o isolamento e a consistência dos dados.

NÃO CAIA NESSA!

O 2PC é um protocolo clássico de consenso distribuído. Lembre-se de suas principais características: garante atomicidade, é bloqueante, utiliza logs, e é aplicado em ambientes distribuídos. A pegadinha mais comum é acreditar que ele elimina bloqueios, mas na verdade eles são um de seus pontos fracos.

Gabarito: letra A.

Link permanente: /questoes/ce195371