Questão de Banco de Dados — Banco de Dados — Quadrix 2025
- Código
- qg594968
- Banca
- Quadrix
- Órgão
- CFO
- Ano
- 2025
- Nível
- Superior
- Cargo
- Analista de Infraestrutura
- CCerto
- EErrado
GabaritoC — Certo
Gabarito: CERTO. A replicação síncrona garante alta consistência porque a transação só é confirmada após o dado ser gravado em todos os nós, mas isso exige comunicação e confirmação de cada réplica, o que aumenta a latência e reduz a disponibilidade em cenários distribuídos — exatamente o que a assertiva afirma. O trade-off entre consistência, desempenho e disponibilidade é o núcleo do tema.
A replicação é o processo de manter cópias dos dados em múltiplos nós de um banco de dados distribuído, garantindo que todos os nós tenham a mesma visão dos dados. Ela é essencial para alta disponibilidade, tolerância a falhas e desempenho de leitura, mas o custo depende do modo como é implementada. Existem dois modos principais: síncrono e assíncrono.
Na replicação síncrona, o nó primário (ou coordenador) só considera a transação concluída depois que todos os nós réplicas confirmam a gravação. Isso garante que, a qualquer momento, todos os nós tenham exatamente os mesmos dados — consistência forte. Porém, essa garantia tem um preço: cada transação precisa aguardar a resposta de todos os nós, o que aumenta a latência (desempenho) e, se um nó estiver indisponível, a transação pode ficar bloqueada ou falhar, reduzindo a disponibilidade. Em cenários distribuídos com muitos nós ou com rede lenta, esse custo se torna ainda mais significativo.
Na replicação assíncrona, o nó primário confirma a transação localmente e propaga as alterações aos réplicas em segundo plano, sem aguardar confirmação. Isso melhora o desempenho e a disponibilidade, mas pode gerar inconsistência temporária: um nó réplica pode estar desatualizado por um curto período. É o modelo usado, por exemplo, em muitos sistemas de cache e em réplicas de leitura de bancos relacionais.
A assertiva da questão descreve com precisão o trade-off da replicação síncrona: alta consistência (todos os nós sempre iguais) em troca de possível comprometimento do desempenho (maior latência) e da disponibilidade (dependência de todos os nós estarem acessíveis). Esse é um conceito clássico em sistemas distribuídos, frequentemente cobrado em provas de banco de dados.
A banca pode tentar inverter o trade-off: dizer que a replicação síncrona prioriza desempenho/disponibilidade e a assíncrona prioriza consistência. Na verdade, é o oposto: síncrona = consistência forte, mas com custo de desempenho e disponibilidade; assíncrona = melhor desempenho/disponibilidade, mas com consistência eventual. Fique atento a essa troca.
A afirmativa está correta. Ela afirma que a replicação síncrona "garante alta consistência de dados entre nós" — o que é verdade, pois a transação só é confirmada após todas as réplicas gravarem — e que "pode comprometer o desempenho e a disponibilidade em cenários distribuídos" — também verdade, pois a necessidade de sincronização aumenta a latência e torna o sistema dependente da disponibilidade de todos os nós. Esse é o trade-off clássico entre consistência, disponibilidade e desempenho (relacionado ao Teorema CAP, embora não citado na questão).
Gabarito: CERTO
Link permanente: /questoes/qg594968