Saltear al contenido principal

TIPS: Interpretar Missing index en SQL Server

Cuando realizamos un análisis de rendimiento de nuestras consultas, un usual primer camino lo damos a través de la revisión del plan de ejecución. Vemos todo el detalle de nuestra consulta y notamos que en la parte superior del gráfico nos muestra una sugerencia casi indiscutible ¿verdad?. Esas letras de color verde que nos promete un porcentaje de impacto en mejora. ¡Exacto!, es el missing index. Pero, ¿cuál es la manera adecuada de interpretar el Missing Index en SQL Server?

interpretar-missing-index

¿Qué significa Missing Index?

Nada más que una recomendación del propio motor para considerar la creación de un índice. Y lo remarco, es una recomendación. Por ende, no es una obligación ni tampoco puedes considerarla como la solución a tus problemas.

¿De dónde se obtiene la información para hacer esta recomendación?

Tenemos diferentes vistas de sistema (DMV’s) que almacenan información relevante para plantear estas recomendaciones. Por ejemplo las tablas:

Los datos que tienen estas tablas no son persistentes. Esto quiere decir que serán eliminados con un reinicio del servidor.

Entonces ¿Cómo interpretar el Missing Index?

Aquello que es sugerido por el motor, se basa en aquello que tú le pides. ¿Qué quiere decir? Si tú ejecutas una determinada consulta, el motor te recomendará la creación de un índice adecuado para ella exclusivamente. Esto significa que no existe una recomendación general, una que sea válida para todas las consultas. El denominado Missing Index Recommendation es exclusivo para una consulta y no para un conjunto de consultas.

Considera al Missing Index como una sugerencia, nunca como algo definitivo.

Finalmente ¿Y qué tiene de malo si ejecuto todas las recomendaciones de Missing Index?

  • Nada. Mientras tengas una buena política de Testing y control de cambios.
  • Los Missing Index no son 100% precisos. Pueden sugerirte menos o más columnas, sobretodo en las columnas del INCLUDE.
  • No siempre se muestran todas las recomendaciones en el plan de ejecución. Puedes ver que en su XML pueden existir más recomendaciones.
  • Crear todos los índices recomendados usualmente lleva a duplicar objetos innecesariamente. Revisa el uso de tus índices con nuestra herramienta.

Cuántos Missing Index pueden existir en una base de datos. Genera un reporte y mira dónde te pueden ayudar.

Pablo Javier Fernández

www.datoptim.com
I love working on SQL Server Performance Tuning and finding the origin of the problems. Music and SQL Server passionate.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Close search

Carrito

Volver arriba