Durante a fase de otimização de consultas em um banco de dados relacional, um desenvolvedor percebe que uma query que envolve JOINs entre três tabelas está com desempenho insatisfatório. A consulta frequentemente filtra os resultados por uma coluna específica de uma das tabelas envolvidas no JOIN. Qual a ação mais eficaz para melhorar o desempenho dessa consulta, considerando que a integridade dos dados deve ser mantida e o overhead de escrita minimizado?
- A)Remover o índice primário de uma das tabelas para permitir uma leitura mais rápida.
- B)Criar um índice composto sobre as colunas utilizadas no JOIN e na cláusula WHERE.gabarito
- C)Aumentar a frequência de backups do banco de dados para liberar recursos.
- D)Adicionar mais dados aleatórios nas tabelas para confundir o otimizador de consulta.
- E)Alterar o tipo de dados da coluna de filtro para um tipo menos eficiente, mas que ocupe menos espaço em disco.