Questão FC369527
O Comitê Olímpico Brasileiro utiliza um banco de dados em memória para avaliar o desempenho dos atletas em competições ao longo do ano. Considere a seguinte consulta SQL que busca
Sistema de Gerenciamento de Banco de Dados (SGBD)
FGV · 2024
O Comitê Olímpico Brasileiro utiliza um banco de dados em memória para avaliar o desempenho dos atletas em competições ao longo do ano.
Considere a seguinte consulta SQL que busca os 10 melhores atletas do Brasil com base em suas pontuações em competições oficiais durante o ano de 2023:

A otimização mais eficaz para melhorar o desempenho dessa consulta no banco de dados em memória utilizado pelo Comitê Olímpico seria
- criar um índice na coluna data_competicao.
- particionar a tabela competicoes por ano.
- materializar uma view pré-agregada com as pontuações totais dos atletas por ano.
- utilizar um banco de dados NoSQL orientado a documentos.
- aplicar algoritmos de aprendizado de máquina para prever os atletas com as melhores pontuações.
Mostrar resposta e comentário
Gabarito
Certo
Comentário do professor
A opção de **materializar** uma view pré-agregada com as pontuações totais por atleta e por ano é a mais eficiente porque remove o custo repetido de calcular agregações e ordenações no momento da consulta.
Ao armazenar previamente o resultado de SUM(pontuação) agrupado por atleta e ano, a consulta que busca o top 10 em 2023 passa a ler uma tabela já reduzida, evitando varreduras e group by sobre dados transacionais volumosos.
Em bancos em memória isso reduz CPU e latência: menos operações de agregação e menos movimentação de dados na memória.
Para manter a validade, use **manutenção incremental** ou refresh programado conforme a frequência de atualizações; isso equilibra consistência e desempenho.
Adicione um **índice** ou ordenação na view materializada pelo total para acelerar ainda mais a obtenção do top N.
Conteúdo do catálogo FC Concursos · Atualizado em