Middle+
Quais são as desvantagens dos índices no contexto da otimização de desempenho?
sobes.tech IA
Resposta da IA
Embora os índices acelerem significativamente as operações de leitura de dados, eles têm desvantagens que afetam o desempenho:
- Custos adicionais na escrita. Cada operação de inserção, atualização ou eliminação requer atualizar os índices correspondentes. Isto é trabalho adicional que desacelera essas operações.
- Requerem espaço em disco. Os índices são armazenados no disco separadamente dos próprios dados, consumindo espaço adicional, o que pode ser um problema para tabelas muito grandes ou múltiplos índices.
- Afetam o desempenho das operações de varredura completa da tabela. Paradigmaticamente, ter muitos índices pode desacelerar consultas que requerem uma varredura completa da tabela, pois o otimizador de consultas tem mais dificuldade em escolher o plano de execução ótimo.
- Nem sempre são utilizados pelo otimizador de consultas. Às vezes, o otimizador pode decidir não usar um índice se, por exemplo, a percentagem de linhas a serem lidas para essa consulta for demasiado alta, e uma varredura completa for mais rápida. Isto torna o índice ineficaz para essa consulta específica.
- Podem ser ineficazes ao trabalhar com colunas "largas". Os índices em colunas de strings longas podem ocupar muito espaço e ser menos eficientes.
- Requerem manutenção. Os índices podem fragmentar-se com o tempo, o que reduz a sua eficiência. É necessária manutenção regular (reconstrução, reorganização) para um desempenho ótimo.