Compartir a través de


Estadísticas de consultas dinámicas

Se aplica a:SQL ServerAzure SQL DatabaseAzure SQL Managed InstanceBase de datos SQL en Microsoft Fabric

SQL Server Management Studio proporciona la capacidad de ver el plan de ejecución en vivo de una consulta activa. Este plan de consulta activa ofrece información en tiempo real sobre el proceso de ejecución de consulta a medida que los controles fluyen de un operador de plan de consulta a otro. El plan de consulta activa muestra el progreso general de la consulta y las estadísticas de ejecución a nivel de operador en tiempo real, como el número de filas generadas, el tiempo transcurrido, el progreso del operador, etc.

Dado que puede acceder a estos datos en tiempo real sin necesidad de esperar a que se complete la consulta, estas estadísticas de ejecución son extremadamente útiles para depurar problemas de rendimiento de consultas.

Internamente, las estadísticas de consulta en vivo usan la DMV sys.dm_exec_query_profiles.

Warning

Esta característica sirve principalmente para solucionar problemas. El uso de esta característica puede ralentizar moderadamente el rendimiento general de las consultas, especialmente en SQL Server 2014 (12.x). Para obtener más información, vea Infraestructura de generación de perfiles de consultas.
Puede usar esta característica con el depurador Transact-SQL.

Visualización de estadísticas de consultas dinámicas para una consulta

  1. Para ver el plan de ejecución de consultas dinámicas, en el menú herramientas, seleccione el icono Incluir estadísticas de consulta activa .

    Captura de pantalla de SQL Server Management Studio, que muestra el botón de Estadísticas de consulta en tiempo real en la barra de herramientas.

    También puede acceder al plan de ejecución de consultas dinámicas haciendo clic con el botón derecho en una consulta seleccionada en Management Studio y seleccionando Incluir estadísticas de consulta activa.

    Captura de pantalla de SQL Server Management Studio, mostrando el botón Estadísticas de consultas en vivo en el menú emergente.

  2. Ejecutar la consulta. El plan de consulta en vivo muestra el progreso general de la consulta y las estadísticas de ejecución en tiempo real (por ejemplo, tiempo transcurrido o progreso) de los operadores del plan de consulta. Las estadísticas de ejecución y la información de progreso de consulta se actualizan periódicamente mientras la ejecución de la consulta está en curso. Use esta información para comprender el proceso general de ejecución de consultas y depurar consultas de larga duración, consultas que se ejecutan indefinidamente, consultas que provocan tempdb desbordamiento y tiempos de espera.

    Captura de pantalla de SQL Server Management Studio, mostrando el botón de Estadísticas de consultas en vivo en showplan.

Visualización de estadísticas de consultas dinámicas para cualquier consulta

También puede acceder al plan de ejecución en vivo desde el Monitor de actividad haciendo clic con el botón derecho en cualquier consulta de la tabla Procesos o Consultas costosas activas .

Captura de pantalla del botón Estadísticas de consulta activa en el Monitor de actividad.

Remarks

Debe habilitar la infraestructura del perfil de estadísticas antes de que las estadísticas de consulta dinámica puedan capturar información sobre el progreso de las consultas. Dependiendo de la versión, la sobrecarga puede ser significativa. Para obtener más información sobre esta sobrecarga, consulte Infraestructura de generación de perfiles de consultas.

Permissions

  • Para rellenar la página de resultados de estadísticas de consulta activa, necesita el permiso de nivel SHOWPLAN de base de datos y los permisos necesarios para ejecutar la consulta.
  • En SQL Server, necesita el permiso a nivel de servidor VIEW SERVER STATE para consultar las estadísticas activas.
  • En los niveles Premium de SQL Database, necesita el VIEW DATABASE STATE permiso en la base de datos para ver las estadísticas activas. En los niveles Estándar y Básico de SQL Database, necesita la cuenta Server admin o Microsoft Entra admin para ver las estadísticas en tiempo real.

Note

Microsoft Entra ID anteriormente se conocía como Azure Active Directory (Azure AD).