sys.dm_db_missing_index_group_stats

Actualizado: 17 de julio de 2006

Devuelve información de resumen acerca de grupos de índices que faltan.

Nombre de la columna Tipo de datos Descripción

group_handle

int

Identifica un grupo de índices que faltan. Este identificador es único en todo el servidor.

Las otras columnas proporcionan información sobre todas las consultas para las que se considera que falta el índice del grupo.

En SQL Server 2005, un grupo de índices sólo contiene un índice.

unique_compiles

bigint

Número de compilaciones y recompilaciones que se beneficiarían de este grupo de índices que faltan. Las compilaciones y recompilaciones de muchas consultas distintas puede contribuir a este valor de columna.

user_seeks

bigint

Número de búsquedas iniciadas por consultas de usuario para las que se podría haber utilizado el índice recomendado del grupo.

user_scans

bigint

Número de recorridos iniciados por consultas de usuario para los que se podría haber utilizado el índice recomendado del grupo.

last_user_seek

datetime

Fecha y hora de la última búsqueda iniciada por consultas de usuario para la que se podría haber utilizado el índice recomendado del grupo.

last_user_scan

datetime

Fecha y hora del último recorrido iniciado por consultas de usuario para el que se podría haber utilizado el índice recomendado del grupo.

avg_total_user_cost

float

Costo medio de las consultas de usuario que podría reducirse mediante el índice del grupo.

avg_user_impact

float

Beneficio porcentual medio que podrían obtener las consultas de usuario si se implementara este grupo de índices que faltan. El valor significa que el costo de las consultas se reduciría este porcentaje como promedio si se implementara este grupo de índices que faltan.

system_seeks

bigint

Número de búsquedas iniciadas por consultas del sistema, como consultas de estadísticas automáticas, para las que se podría haber utilizado el índice recomendado del grupo. Para obtener más información, vea Auto Stats (clase de evento).

system_scans

bigint

Número de recorridos iniciados por consultas del sistema para los que se podría haber utilizado el índice recomendado del grupo.

last_system_seek

datetime

Fecha y hora de la última búsqueda en el sistema iniciada por consultas del sistema para la que se podría haber utilizado el índice recomendado del grupo.

last_system_scan

datetime

Fecha y hora del último recorrido en el sistema iniciado por consultas del sistema para el que se podría haber utilizado el índice recomendado del grupo.

avg_total_system_cost

float

Costo medio de las consultas del sistema que podría reducirse mediante el índice del grupo.

avg_system_impact

float

Beneficio porcentual medio que podrían obtener las consultas del sistema si se implementara este grupo de índices que faltan. El valor significa que el costo de las consultas se reduciría este porcentaje como promedio si se implementara este grupo de índices que faltan.

Notas

La información devuelta por sys.dm_db_missing_index_group_stats se actualiza en cada ejecución de la consulta, no en cada compilación o recompilación de la consulta. Las estadísticas de uso no se guardan; sólo se conservan hasta que se reinicia SQL Server. Los administradores de bases de datos deben realizar periódicamente una copia de seguridad de la información de los índices que faltan si desean conservar las estadísticas de uso después del reciclaje del servidor.

Para obtener información sobre la habilitación y deshabilitación de la recopilación de información de índices que faltan, vea Acerca de la característica de índices que faltan.

Para obtener información acerca de las limitaciones de esta característica, vea Limitaciones en el uso de la característica de índices que faltan.

Para obtener información acerca de la coherencia de transacciones relativa a los objetos de administración dinámica de los índices que faltan, vea Acerca de la característica de índices que faltan.

Permisos

Para consultar esta vista de administración dinámica, se debe conceder a los usuarios el permiso VIEW SERVER STATE o cualquier permiso que implique el permiso VIEW SERVER STATE.

Ejemplos

En los siguientes ejemplos se ilustra la forma de usar la vista de administración dinámica sys.dm_db_missing_index_group_stats.

A. Buscar los 10 índices que faltan para los que se prevé mayor aumento de rendimiento en las consultas de usuario

La siguiente consulta determina cuáles de los 10 índices que faltan producirían el mayor aumento acumulado previsto, en orden descendente, para consultas de usuario.

SELECT TOP 10 *
FROM sys.dm_db_missing_index_group_stats
ORDER BY avg_total_user_cost * avg_user_impact * (user_seeks + user_scans)DESC;

B. Buscar los índices que faltan individuales y sus detalles de columna para un grupo específico de índices que faltan

La siguiente consulta determina cuáles de los índices que faltan forman un grupo específico de índices que faltan y muestra sus detalles de columna. Para este ejemplo, el identificador del grupo de índices que faltan es 24.

SELECT migs.group_handle, mid.*
FROM sys.dm_db_missing_index_group_stats AS migs
INNER JOIN sys.dm_db_missing_index_groups AS mig
    ON (migs.group_handle = mig.index_group_handle)
INNER JOIN sys.dm_db_missing_index_details AS mid
    ON (mig.index_handle = mid.index_handle)
WHERE migs.group_handle = 24;

Esta consulta proporciona el nombre de la base de datos, el esquema y la tabla en que falta un índice. También proporciona los nombres de las columnas que deben usarse para la clave de índice. Al escribir la instrucción CREATE INDEX DDL para implementar índices que faltan, se muestran primero las columnas de igualdad y después las columnas de desigualdad en la cláusula ON <nombreDeTabla> de la instrucción CREATE INDEX. Las columnas incluidas deben mostrarse en la cláusula INCLUDE de la instrucción CREATE INDEX. Para determinar un orden efectivo para las columnas de igualdad, ordénelas en función de su selectividad, mostrando primero las columnas más selectivas (en la parte izquierda de la lista de columnas).

Para obtener más información acerca de cómo utilizar la información devuelta por estos objetos de administración dinámica para escribir instrucciones CREATE INDEX DDL, vea Usar la información de índices que faltan para escribir instrucciones CREATE INDEX.

Vea también

Referencia

sys.dm_db_missing_index_columns
sys.dm_db_missing_index_details
sys.dm_db_missing_index_groups
CREATE INDEX (Transact-SQL)

Otros recursos

Buscar índices que faltan
Índices

Ayuda e información

Obtener ayuda sobre SQL Server 2005

Historial de cambios

Versión Historial

17 de julio de 2006

Contenido modificado:
  • Se ha aclarado que un grupo sólo contiene un índice en la definición de group_handle.