Pular para o conteúdo principal

Questão de Banco de Dados — Conceitos Gerais de NoSQL — CESPE / CEBRASPE 2024

Banco de DadosConceitos Gerais de NoSQL
Código
ce403636
Banca
CESPE / CEBRASPE
Órgão
BACEN
Ano
2024
Cargo
Ana ( )
Julgue o próximo item, relativo a bancos de dados. Um dos objetivos do sharding de arquivos em bancos de dados NoSQL é melhorar o balanceamento de carga entre os nós da aplicação.
  1. CCerto
  2. EErrado
Revelar gabarito e comentário

GabaritoC — Certo

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

Sharding em bancos de dados NoSQL

Gabarito: Certo. O sharding é uma técnica de particionamento horizontal de dados que distribui as partições entre diferentes nós de um cluster, permitindo que as operações de leitura e escrita sejam processadas em paralelo, o que melhora o balanceamento de carga entre os nós. Essa é uma das principais estratégias para alcançar a escalabilidade horizontal em bancos de dados NoSQL.

O sharding, também conhecido como particionamento horizontal, consiste em dividir um conjunto de dados em partições menores (shards) e distribuí-las entre vários servidores ou nós de um cluster. Cada nó fica responsável por uma parte dos dados, e as consultas podem ser direcionadas apenas aos nós que contêm os dados relevantes, reduzindo a carga sobre cada nó individual. Essa distribuição permite que o sistema processe um volume maior de requisições simultâneas, pois o trabalho é dividido entre os nós, evitando que um único nó se torne um gargalo.

A escalabilidade horizontal é uma característica fundamental dos bancos de dados NoSQL, que foram projetados para operar em clusters de máquinas comerciais, como destacado no material de apoio: "A escalabilidade horizontal tende a ser uma solução mais viável, porém requer que diversas threads/processos de uma tarefa sejam criadas e distribuídas. Uma alternativa muito conhecida para alcançar escalabilidade horizontal é o Sharding, que consiste em dividir os dados em múltiplas tabelas a serem armazenadas ao longo de diversos nós de uma rede." Essa técnica é amplamente utilizada em bancos como MongoDB, Cassandra e HBase.

O balanceamento de carga é um dos objetivos centrais do sharding. Ao distribuir os dados e as requisições entre os nós, evita-se que um nó fique sobrecarregado enquanto outros ficam ociosos. Isso melhora o desempenho geral do sistema e a utilização dos recursos. Além disso, o sharding também contribui para a disponibilidade e a tolerância a falhas, pois se um nó falhar, os demais continuam operando com suas partições.

É importante não confundir sharding com replicação. Enquanto o sharding divide os dados em partições distintas (cada dado fica em um único nó), a replicação copia os dados para múltiplos nós (cada nó possui uma cópia completa ou parcial). Ambas as técnicas podem ser combinadas para aumentar a escalabilidade e a disponibilidade, mas são conceitos distintos.

A banca explora a associação correta entre sharding e balanceamento de carga, que é um conhecimento essencial sobre bancos de dados NoSQL. O candidato que domina esse conceito identifica facilmente que a afirmação está correta.

Sharding (particionamento horizontal)
  • 1Divide dados em partições (shards)
  • 2Distribui entre nós do cluster
  • 3Objetivos
    • Balanceamento de carga
    • Escalabilidade horizontal
    • Disponibilidade e tolerância a falhas
  • 4Difere de replicação
    • Sharding: cada dado em um nó
    • Replicação: cópias em vários nós
LEVEL · soulevel.com.br

Alternativa C — ✅ Certo ⟵ GABARITO

A afirmação está correta. O sharding é uma técnica de particionamento horizontal que distribui os dados entre vários nós, e um de seus principais objetivos é justamente melhorar o balanceamento de carga, evitando que um único nó fique sobrecarregado. Essa é uma característica fundamental para a escalabilidade horizontal dos bancos de dados NoSQL.

Alternativa E — ❌ Errado

A afirmação não é errada; ela está correta. O sharding, ao distribuir os dados entre os nós, contribui diretamente para o balanceamento de carga, pois as requisições são processadas em paralelo pelos nós que contêm as partições relevantes. Portanto, a alternativa E está incorreta.

Gabarito: Certo (C).

Link permanente: /questoes/ce403636