Características relacionadas con la optimización de consultas
Se pueden utilizar las siguientes características de optimización de consultas de SQL Server con la característica de índices que faltan:
Vistas de administración dinámica sys.dm_db_index_usage_stats y sys.dm_exec_query_stats
Asistente para la optimización de Database Engine (Motor de base de datos)
sys.dm_db_index_usage_stats recopila información de uso de índices para índices existentes en una instancia de SQL Server. sys.dm_exec_query_stats devuelve estadísticas de rendimiento agregadas para planes de consultas en caché. Captura información como el tiempo transcurrido para la ejecución del plan en caché y el número de lecturas lógicas y físicas realizadas cuando se ejecuta un plan en caché.
El Asistente para la optimización de Database Engine (Motor de base de datos) es una herramienta independiente que analiza una carga de trabajo de SQL Server completa y ofrece recomendaciones para configuraciones de estructuras de diseño físico, como índices, vistas indizadas o particiones.
En la siguiente sección se proporciona una comparación detallada del Asistente para la optimización de Database Engine (Motor de base de datos) con la característica de índices que faltan.
Característica de índices que faltan frente al Asistente para la optimización de motor de base de datos
Los índices que faltan es una característica del servidor ligera y siempre activa para detectar y corregir errores de indización. Por el contrario, el Asistente para la optimización de Database Engine (Motor de base de datos) es una herramienta completa que evalúa el diseño físico de la base de datos y recomienda nuevas estructuras de diseño físico para mejorar el rendimiento. El Asistente para la optimización de Database Engine (Motor de base de datos) no sólo considera los índices, sino que también tiene en cuenta si deberían utilizarse vistas indizadas o particiones para mejorar el rendimiento de las consultas.
En la tabla siguiente se compara la característica de índices que faltan y el Asistente para la optimización de Database Engine (Motor de base de datos) con mayor detenimiento:
Punto de comparación |
Característica de índices que faltan |
Asistente para la optimización de motor de base de datos |
---|---|---|
¿Cómo se implementa? |
En el servidor |
En el cliente, aplicación independiente |
¿Disponibilidad? |
Siempre activada |
Iniciada por un administrador de base de datos o invocada en un script |
¿Ámbito del análisis? |
Análisis rápido, ad hoc, que sólo proporciona información limitada acerca de los índices que faltan |
A través del análisis de la carga de trabajo, proporciona un informe completo de recomendaciones sobre la mejor configuración del diseño físico de la base de datos en el contexto de una carga de trabajo enviada |
Las instrucciones UPDATE, INSERT y DELETE, ¿están incluidas en el análisis? |
No |
Sí |
El espacio de almacenamiento en disco disponible, ¿está incluido en el análisis? |
No |
Sí |
¿Las columnas están ordenadas en el índice recomendado? |
No, debe ordenar manualmente las columnas en la instrucción CREATE INDEX |
Determina automáticamente el orden de las columnas en los índices recomendados según el costo de ejecución de una consulta |
¿Recomienda índices agrupados? |
No |
Sí |
¿Recomienda índices de cobertura? |
Sí |
Sí |
¿Recomienda índices que no son de cobertura? |
Sí |
Sí |
¿Recomienda vistas indizadas? |
No |
Sí |
¿Recomienda particiones? |
No |
Sí |
¿Cuál es la base de las recomendaciones? |
Los costos aproximados de la ejecución de una consulta se calculan con el optimizador de consultas |
Los costos de la ejecución de una consulta se calculan con el optimizador de consultas |
¿Cuál es el impacto de implementar recomendaciones? |
Se elabora un informe del impacto aproximado de agregar un índice que falta. Para obtener más información, vea sys.dm_db_missing_index_group_stats (Transact-SQL). |
Se generan quince informes de análisis diferentes, que proporcionan información acerca del impacto de implementar recomendaciones. Para obtener más información, vea Elegir un informe del Asistente para la optimización de motor de base de datos. |
Si se implementan los índices que faltan identificados, se puede mejorar el rendimiento de las consultas. Puede utilizar la característica de configuración especificada por el usuario del Asistente para la optimización de Database Engine (Motor de base de datos) y el modo de evaluación para determinar el impacto de implementar índices que faltan en una carga de trabajo completa. Para obtener más información, vea Análisis de exploración con el Asistente para la optimización de motor de base de datos.
Incluso para una carga de trabajo de consulta única, el Asistente para la optimización de Database Engine (Motor de base de datos) y la característica de índices que faltan pueden devolver recomendaciones diferentes. Esto se produce porque las columnas de clave para los índices que recomienda la característica de índices que faltan no distinguen el orden. Por otra parte, entre las recomendaciones del Asistente para la optimización de Database Engine (Motor de base de datos) se incluye la ordenación de las columnas de clave para que los índices optimicen el rendimiento de las consultas.
Resumen
La característica de índices que faltan se puede utilizar para detectar y corregir errores de indización, mientras que el Asistente para la optimización de Database Engine (Motor de base de datos) se puede utilizar para corregir errores de indización y optimizar la carga de trabajo que se ejecuta en un servidor como un conjunto. Puede utilizar la característica de índices que faltan para generar índices candidatos, pero debería validarlos empleando el Asistente para la optimización de Database Engine (Motor de base de datos).