No âmbito de bancos dados, especialmente NoSQL, o Teorema C...

Próximas questões
Com base no mesmo assunto
Q2096192 Banco de Dados

No âmbito de bancos dados, especialmente NoSQL, o Teorema CAP sustenta que há três requerimentos básicos que existem numa relação especial quando se projeta uma aplicação com uma arquitetura distribuída. Basicamente, respalda a tese de que não se pode obter os três simultaneamente.


Esses três requerimentos são 

Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa correta: C - Consistency, Availability e Partition Tolerance.

O Teorema CAP, introduzido por Eric Brewer, é um conceito fundamental no design de sistemas distribuídos, especialmente em bancos de dados NoSQL. Este teorema afirma que é impossível em um sistema distribuído proporcionar mais do que duas das três seguintes garantias simultaneamente:

  • Consistency (Consistência): Todos os nós veem os mesmos dados ao mesmo tempo. Uma escrita de sucesso deve ser refletida em todas as leituras subsequentes.
  • Availability (Disponibilidade): O sistema deve garantir que toda requisição recebe uma resposta sobre se foi bem-sucedida ou não. Não pode haver falhas inesperadas que deixem o sistema sem resposta.
  • Partition Tolerance (Tolerância a Partições): O sistema deve continuar a operar apesar de ter partições (ou seja, a comunicação entre dois nós falha, seja por problemas de rede ou por qualquer outro motivo).

Esses três aspectos formam um tripé de propriedades que, segundo o teorema, não podem ser atendidos em sua totalidade ao mesmo tempo. Dependendo do sistema e da aplicação que está sendo projetada, o desenvolvedor ou arquiteto terá que priorizar duas dessas propriedades em detrimento da terceira.

Portanto, a alternativa C está correta porque enumera exatamente os três componentes do Teorema CAP: Consistency, Availability e Partition Tolerance. Cada um desses aspectos é essencial para compreender a dinâmica e as limitações dos sistemas distribuídos. Em um exame ou ambiente de concurso, entender esses conceitos pode ajudar a resolver questões relacionadas a bancos de dados NoSQL e o design de sistemas distribuídos.

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

LETRA C

O Teorema CAP vem do inglês: Consistency (Consistência), Availability (Disponibilidade) e Partition Tolerance (Partição tolerante a falhas). Ele afirma que, em um sistema com distribuição de dados, é impossível obter simultaneamente mais de duas das três garantias.

Diferente dos bancos de dados Relacionais os bancos de dados NoSQL possuem a Propriedade BASE:

Basically Available – em vez de impor consistência imediata, os bancos de dados NoSQL modelados em BASE garantirão a disponibilidade dos dados, espalhando-os e replicando-os nos nós do cluster de banco de dados.

Soft State – devido à falta de consistência imediata, os valores dos dados podem mudar com o tempo. O modelo BASE rompe com o conceito de banco de dados que impõe consistência própria, delegando essa responsabilidade aos desenvolvedores.

Eventually Consistent – O fato de que o BASE não impõe consistência imediata não significa que nunca a atinge. No entanto, até que isso aconteça, as leituras de dados ainda são possíveis (embora possam não refletir a realidade).

[GABARITO: LETRA C]

Consistency, Availability e Partition Tolerance.

O Teorema CAP, proposto por Eric Brewer, afirma que em sistemas distribuídos, é impossível obter simultaneamente Consistência (Consistency), Disponibilidade (Availability) e Tolerância a Partições (Partition Tolerance). Um sistema pode garantir no máximo dois desses três requisitos ao mesmo tempo, mas não todos os três simultaneamente.

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo