FC ConcursosFC Concursos

Questão FC369651

O departamento de Tecnologia da Informação de um Tribunal de Contas estadual detectou uma lentidão nas consultas aos registros de casos judiciais. Após uma análise detalhada, const

Outros Tipos e Modelos de Bancos de Dados

FGV · 2024

O departamento de Tecnologia da Informação de um Tribunal de Contas estadual detectou uma lentidão nas consultas aos registros de casos judiciais. Após uma análise detalhada, constatou-se que alguns servidores de banco de dados estavam sobrecarregados, enquanto outros permaneciam subutilizados.

 

Uma solução viável para corrigir esse desequilíbrio seria

  1. particionar tabelas por lista para dividir os casos por tipo.
  2. particionar tabelas por intervalo para dividir os casos por ano.
  3. particionar tabelas por intervalo para dividir os casos por identificador único de cada caso.
  4. particionar tabelas por lista para dividir casos por localização geográfica.
  5. particionar tabelas por hash com base no identificador único de cada caso.
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

Partitionar tabelas por hash com base no identificador único significa calcular uma função hash sobre o id de cada caso e atribuir a linha a uma das N partições/servidores. Em termos simples: \(partition = hash(id)\ \bmod\ N\).

Essa estratégia promove balanceamento uniforme dos registros entre os nós, reduzindo hotspots e distribuindo a carga de leitura/escrita, o que melhora a latência nas consultas ponto a ponto.

Para funcionar é preciso que a aplicação ou o roteador use a mesma função hash para direcionar consultas diretamente ao shard certo, evitando varreduras desnecessárias em todos os servidores.

Observações operacionais: joins e agregações entre partições exigem coordenação; ao adicionar/remover nós, prefira hashing consistente para minimizar redistribuição de dados.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo