sys.dm_exec_query_stats
Actualizado: 12 de diciembre de 2006
Devuelve estadísticas de rendimiento del agregado para planes de consulta en caché. La vista contiene una fila por cada instrucción de consulta dentro del plan en caché, y la duración de las filas está ligada al propio plan. Cuando se quita un plan de la caché, se eliminan las filas correspondientes de esta vista.
[!NOTA] Una consulta inicial de sys.dm_exec_query_stats podría producir resultados imprecisos si hay una carga de trabajo ejecutándose actualmente en el servidor. Pueden determinarse resultados más precisos volviendo a ejecutar la consulta.
Nombre de columna | Tipo de datos | Descripción |
---|---|---|
sql_handle |
varbinary(64) |
Es un testigo que hace referencia al lote o al procedimiento almacenado del que forma parte la consulta. sql_handle, junto con statement_start_offset y statement_end_offset, se pueden usar para recuperar el texto SQL de la consulta llamando a la función de administración dinámica sys.dm_exec_sql_text. |
statement_start_offset |
int |
Indica (en bytes y empezando por 0) la posición inicial de la consulta que la fila describe en el texto del lote o del objeto persistente. |
statement_end_offset |
int |
Indica (en bytes y empezando por 0) la posición final de la consulta que la fila describe en el texto del lote o del objeto persistente. El valor -1 indica el final del lote. |
plan_generation_num |
bigint |
Número de secuencia que se puede usar para distinguir entre instancias de los planes después de una nueva compilación. |
plan_handle |
varbinary(64) |
Testigo que hace referencia al plan compilado del que forma parte la consulta. Este valor se puede pasar a la función de administración dinámica sys.dm_exec_query_plan para obtener el plan de consulta. |
creation_time |
datetime |
Hora en que se compiló el plan. |
last_execution_time |
datetime |
Hora en que se ejecutó el plan por última vez. |
execution_count |
bigint |
Número de veces que se ha ejecutado el plan desde que se compiló por última vez. |
total_worker_time |
bigint |
Tiempo total de CPU, en microsegundos, consumido por las ejecuciones de este plan desde su compilación. |
last_worker_time |
bigint |
Tiempo de CPU, en microsegundos, consumido la última vez que se ejecutó el plan. |
min_worker_time |
bigint |
Tiempo mínimo de CPU, en microsegundos, que ha utilizado este plan durante una ejecución. |
max_worker_time |
bigint |
Tiempo máximo de CPU, en microsegundos, que ha utilizado este plan durante una ejecución. |
total_physical_reads |
bigint |
Número total de lecturas físicas realizadas por las ejecuciones de este plan desde su compilación. |
last_physical_reads |
bigint |
Número de lecturas físicas realizadas la última vez que se ejecutó el plan. |
min_physical_reads |
bigint |
Número mínimo de lecturas físicas que ha realizado este plan durante una ejecución. |
max_physical_reads |
bigint |
Número máximo de lecturas físicas que ha realizado este plan durante una ejecución. |
total_logical_writes |
bigint |
Número total de escrituras lógicas realizadas por las ejecuciones de este plan desde su compilación. |
last_logical_writes |
bigint |
Número de escrituras lógicas realizadas la última vez que se ejecutó el plan. |
min_logical_writes |
bigint |
Número mínimo de escrituras lógicas que ha realizado este plan durante una ejecución. |
max_logical_writes |
bigint |
Número máximo de escrituras lógicas que ha realizado este plan durante una ejecución. |
total_logical_reads |
bigint |
Número total de lecturas lógicas realizadas por las ejecuciones de este plan desde su compilación. |
last_logical_reads |
bigint |
Número de lecturas lógicas realizadas la última vez que se ejecutó el plan. |
min_logical_reads |
bigint |
Número mínimo de lecturas lógicas que ha realizado este plan durante una ejecución. |
max_logical_reads |
bigint |
Número máximo de lecturas lógicas que ha realizado este plan durante una ejecución. |
total_clr_time |
bigint |
Tiempo, en microsegundos, consumido en objetos de Microsoft .NET Framework Common Language Runtime (CLR) mediante las ejecuciones de este plan desde su compilación. Los objetos CLR pueden ser procedimientos almacenados, funciones, desencadenadores, tipos y agregados. |
last_clr_time |
bigint |
Tiempo consumido por la ejecución dentro de objetos de .NET Framework CLR durante la última ejecución de este plan. Los objetos CLR pueden ser procedimientos almacenados, funciones, desencadenadores, tipos y agregados. |
min_clr_time |
bigint |
Tiempo mínimo, en microsegundos, que este plan ha consumido en objetos de .NET Framework CLR durante una sola ejecución. Los objetos CLR pueden ser procedimientos almacenados, funciones, desencadenadores, tipos y agregados. |
max_clr_time |
bigint |
Tiempo máximo, en microsegundos, que este plan ha consumido en .NET Framework CLR durante una sola ejecución. Los objetos CLR pueden ser procedimientos almacenados, funciones, desencadenadores, tipos y agregados. |
total_elapsed_time |
bigint |
Tiempo total transcurrido, en microsegundos, hasta la finalización de las ejecuciones de este plan. |
last_elapsed_time |
bigint |
Tiempo transcurrido, en microsegundos, hasta la finalización de la ejecución más reciente de este plan. |
min_elapsed_time |
bigint |
Tiempo mínimo transcurrido, en microsegundos, hasta finalizar cualquier ejecución de este plan. |
max_elapsed_time |
bigint |
Tiempo máximo transcurrido, en microsegundos, hasta finalizar cualquier ejecución de este plan. |
Permisos
Requiere el permiso VIEW SERVER STATE en el servidor.
Notas
Cuando se completa una consulta, se actualizan las estadísticas en la vista.
Ejemplos
En el siguiente ejemplo se devuelve información acerca de las cinco consultas con el mayor promedio de tiempo CLR.
SELECT TOP 5 creation_time, last_execution_time, total_clr_time,
total_clr_time/execution_count AS [Avg CLR Time], last_clr_time,
execution_count,
SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,
((CASE statement_end_offset
WHEN -1 THEN DATALENGTH(st.text)
ELSE qs.statement_end_offset END
- qs.statement_start_offset)/2) + 1) as statement_text
FROM sys.dm_exec_query_stats as qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) as st
ORDER BY total_clr_time/execution_count DESC;
GO
Vea también
Referencia
Funciones y vistas de administración dinámica
Funciones y vistas de administración dinámica relacionadas con ejecuciones
sys.dm_exec_sql_text
sys.dm_exec_query_plan
Ayuda e información
Obtener ayuda sobre SQL Server 2005
Historial de cambios
Versión | Historial |
---|---|
12 de diciembre de 2006 |
|
14 de abril de 2006 |
|
5 de diciembre de 2005 |
|