Questão nº 60
Questão de Tecnologia da Informação · FGV TJ-SE Servidor 2023 (nº 60)
No contexto de administração de banco de dados relacional, para melhorar o desempenho das consultas aos dados, é uma prática recomendada:
- Adividir as tabelas em várias partições menores para distribuir os dados;
- Bremover todos os índices da tabela para reduzir a sobrecarga de acesso;
- Cdesnormalizar todas as tabelas para reduzir o número de relacionamentos;
- Dadicionar índices adequados às colunas usadas em condições de filtro e junções; (alternativa correta)
- Eaumentar o número de colunas em cada tabela para evitar a necessidade de junções.
Resposta comentada
Gabarito Alternativa D
Para melhorar o desempenho de um banco de dados, especialmente na hora de buscar informações (consultas), o objetivo é fazer com que o sistema encontre os dados que você precisa da forma mais rápida possível, como usar um índice em um livro para ir direto à página certa.
(A) Incorreta: Dividir tabelas (particionamento) pode ajudar a gerenciar grandes volumes de dados e melhorar o desempenho em cenários específicos, mas não é a primeira ou mais fundamental prática para todas as consultas, sendo uma técnica mais avançada e complexa.
(B) Incorreta: Remover todos os índices é o oposto do que se busca para melhorar o desempenho de consultas. Embora reduza a sobrecarga em operações de escrita (inserção, atualização, exclusão), ele torna a busca e leitura de dados extremamente lenta, pois o banco terá que varrer a tabela inteira a cada consulta. Armadilha da banca: Confunde "sobrecarga de acesso" (que pode ser de escrita) com "desempenho de consulta" (que é de leitura).
(C) Incorreta: Desnormalizar tabelas (reduzir a normalização para evitar junções) pode, em alguns casos, melhorar o desempenho de consultas específicas, mas geralmente introduz redundância de dados e pode levar a problemas de integridade e inconsistência, sendo uma otimização de último recurso e com muitos efeitos colaterais.
(D) Correta: Adicionar índices adequados às colunas que são frequentemente usadas em condições de filtro (cláusulas `WHERE`), ordenação (`ORDER BY`) e junções (`JOIN`) é a prática mais eficaz e fundamental para acelerar a execução de consultas, permitindo que o banco de dados localize os dados rapidamente sem precisar ler a tabela inteira.
(E) Incorreta: Aumentar o número de colunas em cada tabela, especialmente se forem colunas redundantes ou que deveriam estar em outras tabelas, pode tornar as tabelas mais "largas", ocupando mais espaço e potencialmente diminuindo a eficiência de leitura e escrita, além de ser uma forma de desnormalização que traz os problemas já mencionados.
Fonte: FGV TJ-SE Servidor 2023 Analista Judiciário - Análise de Sistemas - Suporte Técnico em Infraestrutura (Caderno Tipo 1). Reproduzida para fins de estudo.