Estou procurando uma maneira de provar que alguns índices adicionados recentemente estão impactando positivamente um sistema de produção.
Eu coletei algumas estatísticas dmv para mostrar que os índices estão realmente sendo usados (com frequência), mas preciso de alguma maneira para provar que eles estão tendo um impacto positivo o suficiente nas consultas selecionadas, que qualquer impacto negativo do tempo adicionado de atualização/exclusão é offput.
Estou procurando por qualquer insight / conselho sobre como provar que esses índices têm um impacto positivo.
Você precisa basear toda uma carga de trabalho e medir antes/depois. Com apenas os números acima, não tenho ideia do que eles significam. As perguntas que eu teria incluem:
Faça backup. Restaurar em um servidor dev. Reproduza um rastreamento com e sem os índices e compare (observe que os resultados absolutos podem diferir com base no hardware/rede, etc., e você não obterá efeitos reais de simultaneidade, mas as diferenças relativas devem ser úteis). Você pode comparar uma variedade de coisas:
sys.dm_os_wait_stats
antes e depois de cada execuçãosys.dm_exec_query_stats
/sys.dm_exec_procedure_stats
antes e depois de cada execuçãoCertifique-se de executar a carga de trabalho algumas vezes primeiro para preparar o cache (porque seu sistema de produção raramente estará operando em um cache frio).
Se você não rastreou uma carga de trabalho bastante representativa, é isso que você precisa fazer. Não consigo pensar em nenhuma maneira "rápida" de provar o impacto desses índices em sua carga de trabalho real.