Estadísticas de SQL (objeto de SQL Server)

Se aplica a:SQL Server

El objeto SQLServer:SQL Statistics de SQL Server proporciona contadores para supervisar la compilación y el tipo de solicitudes que se envían a una instancia de SQL Server. La supervisión del número de compilaciones y recompilaciones de consultas y el número de lotes que recibe una instancia de SQL Server proporciona información acerca de la rapidez con la que SQL Server procesa las consultas de usuarios y la eficacia con la que el optimizador de consultas las procesa.

La compilación constituye una parte significativa del intervalo de respuesta de una consulta. Para ahorrar el coste de compilación, el Motor de base de datos guarda el plan de consulta compilado en una caché de consultas. La caché reduce la compilación al almacenar consultas compiladas para su reutilización posterior, lo que elimina la necesidad de recompilar consultas en ejecuciones posteriores. No obstante, se debe compilar cada consulta única al menos una vez. Los siguientes factores pueden provocar recompilaciones de consultas:

  • Cambios de esquema, incluidos cambios básicos como agregar columnas o índices a una tabla, o bien cambios estadísticos como insertar o eliminar un número significativo de filas de una tabla.

  • Cambios en el entorno (SET afirmación). Los cambios en la configuración de la sesión, como ANSI_PADDING o ANSI_NULLS pueden hacer que una consulta sea recompilada.

Para obtener más información, consulte:

La siguiente tabla enumera los contadores de estadísticas SQL de SQL Server.

Contadores de SQLServer:SQL Statistics Descripción
Intentos de parametrización automática/seg. Número de intentos de parametrización automática por segundo. El número total deber ser la suma de las parametrizaciones automáticas seguras, no seguras y con errores. La parametrización automática tiene lugar cuando una instancia de SQL Server intenta parametrizar una solicitud de SQL Server reemplazando algunos literales por parámetros, de forma que se posibilita la reutilización del plan de ejecución almacenado en caché resultante en varias solicitudes parecidas. La autoparametrización también se conoce como parametrización simple. Este contador no incluye parametrizaciones forzadas.
Solicitudes de lotes/seg. Número de lotes de comandos de Transact-SQL recibidos por segundo. Esta estadística se ve afectada por todas las restricciones (como E/S, número de usuarios, tamaño de caché y complejidad de las solicitudes). Un número alto de solicitudes de lotes significa un buen rendimiento.
Parametrizaciones automáticas con error/seg. Número de intentos de parametrización automática con error por segundo. Este valor debería ser pequeño. La autoparametrización también se conoce como parametrización simple.
Parametrizaciones forzadas/seg. Número de parametrizaciones forzadas logradas por segundo.
Ejecuciones de planes correctos/seg Número de ejecuciones de planes por segundo en los que el plan de consulta se ha generado utilizando una guía de plan.
Ejecuciones de planes equivocados/seg Número de ejecuciones de planes por segundo en las que no se pudo respetar una guía de planes durante la generación. El optimizador de consultas ignoraba la guía de planos y utilizaba la compilación normal para generar el plan ejecutado.
Parametrizaciones automáticas seguras/seg. Número de intentos de parametrización automática segura por segundo. El término "segura" se refiere a la determinación de que un plan de ejecución almacenado en caché puede compartirse entre varias instrucciones Transact-SQL. SQL Server realiza muchos intentos de autoparametrización. Algunos resultan ser seguros y otros fracasan. La autoparametrización también se conoce como parametrización simple. Este contador no incluye parametrizaciones forzadas.
Velocidad de atención de SQL Número de atenciones por segundo. Una atención es una solicitud del cliente para finalizar la solicitud que se está ejecutando en ese momento.
Compilaciones SQL/seg. Número de compilaciones SQL por segundo. Indica el número de veces que se ha especificado la ruta de acceso al código de compilación. Incluye compilaciones causadas por recompilaciones de instrucciones en SQL Server. Cuando la actividad de usuarios de SQL Server es estable, este valor permanece fijo.
Recompilaciones SQL/seg. Número de recompilaciones de instrucciones por segundo. Cuenta el número de veces que se desencadenan las recompilaciones de instrucciones. En general, es conveniente que el número de recompilaciones sea bajo.
Parametrizaciones automáticas no seguras/seg. Número de intentos de parametrización automática no segura por segundo. Por ejemplo, la consulta dispone de algunas características que impiden compartir el plan almacenado en caché. Estas características se consideran inseguras. Este recuento no incluye el número de parametrizaciones forzadas.

Examples

Para explorar los contadores de rendimiento de consulta en este objeto, ejecuta la siguiente consulta Transact-SQL (T-SQL) en la vista de gestión dinámica sys.dm_os_performance_counters :

SELECT *
FROM sys.dm_os_performance_counters
WHERE object_name LIKE '%SQL Statistics%';