Performance Statistics (clase de evento)

La clase de evento Performance Statistics se puede utilizar para supervisar el rendimiento de las consultas, los procedimientos almacenados y los desencadenadores que se están ejecutando. Cada una de las seis subclases de evento indica un evento en la vigencia de las consultas, los procedimientos almacenados y los desencadenadores dentro del sistema. Si usa la combinación de estas subclases de evento y las vistas de administración dinámica asociadas sys.dm_exec_query_stats, sys.dm_exec_procedure_stats y sys.dm_exec_trigger_stats, puede reconstituir el historial de rendimiento de cualquier consulta, procedimiento almacenado o desencadenador dados.

Columnas de datos de la clase de evento Performance Statistics

Las tablas siguientes describen las columnas de datos de clase de eventos con cada una de las siguientes subclases de evento: EventSubClass 0, EventSubClass 1, EventSubClass 2, EventSubClass 3, EventSubClass 4 y EventSubClass 5.

EventSubClass 0

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

Identificador de la base de datos especificada por la instrucción USE database o la base de datos predeterminada si no se ha emitido ninguna instrucción USE database para una instancia determinada. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. El valor para una base de datos se puede determinar mediante la función DB_ID.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

EventSubClass

int

Tipo de subclase de evento.

0 = Nuevo texto SQL del lote que no está presente actualmente en la caché.

Los siguientes tipos de EventSubClass se generan en el seguimiento para lotes ad hoc.

Para lotes ad hoc con n consultas:

  • 1 de tipo 0

21

IntegerData2

int

NULL

55

ObjectID

int

NULL

22

Offset

int

NULL

61

PlanHandle

Image

NULL

65

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión de SQL Server y de Windows.

64

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL que se puede utilizar para obtener el texto SQL del lote mediante la vista de administración dinámica sys.dm_exec_sql_text.

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

Texto SQL del lote.

1

EventSubClass 1

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

Número acumulado de veces que este plan se ha vuelto a compilar.

52

BinaryData

image

XML binario del plan compilado.

2

DatabaseID

int

Identificador de la base de datos especificada por la instrucción USE database o la base de datos predeterminada si no se ha emitido ninguna instrucción USE database para una instancia determinada. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. El valor para una base de datos se puede determinar mediante la función DB_ID.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión tanto de SQL Server como de Windows.

64

EventSubClass

int

Tipo de subclase de evento.

1 = Las consultas en un procedimiento almacenado se han compilado.

Los siguientes tipos de EventSubClass se generan en el seguimiento para procedimientos almacenados.

Para procedimientos almacenados con n consultas:

  • n de tipo 1

21

IntegerData2

int

Final de la instrucción dentro del procedimiento almacenado.

-1 para el final del procedimiento almacenado.

55

ObjectID

int

Id. del objeto asignado por el sistema.

22

Offset

int

Desplazamiento inicial de la instrucción en el procedimiento almacenado o lote.

61

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL que se puede utilizar para obtener el texto SQL del procedimiento almacenado mediante la vista de administración dinámica dm_exec_sql_text .

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

NULL

1

PlanHandle

image

Identificador del plan compilado para el procedimiento almacenado. Se puede usar para obtener el plan XML mediante la vista de administración dinámica sys.dm_exec_query_plan.

65

ObjectType

int

Valor que representa el tipo de objeto incluido en el evento.

8272 = procedimiento almacenado

28

BigintData2

bigint

Memoria total, en kilobytes, utilizada durante la compilación.

53

CPU

int

Tiempo total de CPU, en milisegundos, transcurrido durante la compilación.

18

Duration

int

Tiempo total transcurrido durante la compilación (en microsegundos).

13

IntegerData

int

Tamaño, en kilobytes, del plan compilado.

25

EventSubClass 2

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

Número acumulado de veces que este plan se ha vuelto a compilar.

52

BinaryData

image

XML binario del plan compilado.

2

DatabaseID

int

Identificador de la base de datos especificada por la instrucción USE database o la base de datos predeterminada si no se ha emitido ninguna instrucción USE database para una instancia determinada. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. El valor para una base de datos se puede determinar mediante la función DB_ID.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión tanto de SQL Server como de Windows.

64

EventSubClass

int

Tipo de subclase de evento.

2 = Las consultas en una instrucción SQL ad hoc se han compilado.

Los siguientes tipos de EventSubClass se generan en el seguimiento para lotes ad hoc.

Para lotes ad hoc con n consultas:

  • n de tipo 2

21

IntegerData2

int

Final de la instrucción dentro del lote.

-1 para el final del lote.

55

ObjectID

int

N/D

22

Offset

int

Desplazamiento inicial de la instrucción dentro del lote.

0 para el comienzo del lote.

61

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL. Se puede utilizar para obtener el texto SQL del lote mediante la vista de administración dinámica dm_exec_sql_text.

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

NULL

1

PlanHandle

image

Identificador del plan compilado para el lote. Se puede usar para obtener el plan XML del lote mediante la vista de administración dinámica dm_exec_query_plan.

65

BigintData2

bigint

Memoria total, en kilobytes, utilizada durante la compilación.

53

CPU

int

Tiempo total de CPU, en microsegundos, transcurrido durante la compilación.

18

Duration

int

Tiempo total transcurrido durante la compilación (en milisegundos).

13

IntegerData

int

Tamaño, en kilobytes, del plan compilado.

25

EventSubClass 3

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

Número acumulado de veces que este plan se ha vuelto a compilar.

52

BinaryData

image

NULL

2

DatabaseID

int

Identificador de la base de datos especificada por la instrucción USE database o la base de datos predeterminada si no se ha emitido ninguna instrucción USE database para una instancia determinada. SQL Server Profiler muestra el nombre de la base de datos si se captura la columna de datos ServerName en el seguimiento y el servidor está disponible. El valor para una base de datos se puede determinar mediante la función DB_ID.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión tanto de SQL Server como de Windows.

64

EventSubClass

int

Tipo de subclase de evento.

3 = Se ha destruido una consulta almacenada en caché y los datos históricos de rendimiento asociados al plan están a punto de ser destruidos.

Los siguientes tipos de EventSubClass se generan en el seguimiento.

Para lotes ad hoc con n consultas:

  • 1 de tipo 3 cuando la consulta se vacíe de la caché.

Para procedimientos almacenados con n consultas:

  • 1 de tipo 3 cuando la consulta se vacía de la caché.

21

IntegerData2

int

Final de la instrucción en el procedimiento almacenado o lote.

-1 para el final del lote o procedimiento almacenado.

55

ObjectID

int

NULL

22

Offset

int

Desplazamiento inicial de la instrucción en el procedimiento almacenado o lote.

0 para el comienzo del lote o procedimiento almacenado.

61

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL que se puede utilizar para obtener el texto SQL del lote o procedimiento almacenado mediante la vista de administración dinámica dm_exec_sql_text .

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

QueryExecutionStats

1

PlanHandle

image

Identificador del plan compilado para el lote o procedimiento almacenado. Se puede usar para obtener el plan XML mediante la vista de administración dinámica dm_exec_query_plan.

65

GroupID

int

Identificador del grupo de cargas de trabajo donde se activa el evento de seguimiento SQL.

66

EventSubClass 4

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

Identificador de la base de datos en la que reside el procedimiento almacenado dado.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión tanto de SQL Server como de Windows.

64

EventSubClass

int

Tipo de subclase de evento.

4 = un procedimiento almacenado en memoria caché se ha quitado de la caché y los datos de rendimiento históricos asociados a él están a punto de ser destruidos.

21

IntegerData2

int

NULL

55

ObjectID

int

Identificador del procedimiento almacenado. Equivale a la columna object_id en sys.procedures.

22

Offset

int

NULL

61

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL que se puede utilizar para obtener el texto SQL del procedimiento almacenado que se ejecutó mediante la vista de administración dinámica dm_exec_sql_text .

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

ProcedureExecutionStats

1

PlanHandle

image

Identificador del plan compilado para el procedimiento almacenado. Se puede usar para obtener el plan XML mediante la vista de administración dinámica dm_exec_query_plan.

65

GroupID

int

Identificador del grupo de cargas de trabajo donde se activa el evento de seguimiento SQL.

66

EventSubClass 5

Nombre de la columna de datos

Tipo de datos

Descripción

Id. de columna

Filtrable

BigintData1

bigint

NULL

52

BinaryData

image

NULL

2

DatabaseID

int

Identificador de la base de datos en la que reside el desencadenador dado.

3

EventSequence

int

Secuencia de un evento determinado en la solicitud.

51

No

SessionLoginName

nvarchar

Nombre de inicio de sesión del usuario que originó la sesión. Por ejemplo, si se conecta a SQL Server usando inicioDeSesión1 y ejecuta una instrucción como inicioDeSesión2, SessionLoginName muestra inicioDeSesión1 y LoginName muestra inicioDeSesión2. En esta columna se muestran los inicios de sesión tanto de SQL Server como de Windows.

64

EventSubClass

int

Tipo de subclase de evento.

5 = un desencadenador almacenado en memoria caché se ha quitado de la caché y los datos de rendimiento históricos asociados a él están a punto de ser destruidos.

21

IntegerData2

int

NULL

55

ObjectID

int

Identificador del desencadenador. Equivale a la columna object_id en las vistas de catálogo sys.triggers/sys.server_triggers.

22

Offset

int

NULL

61

SPID

int

Identificador de la sesión en la que se produjo el evento.

12

SqlHandle

image

Identificador SQL que se puede utilizar para obtener el texto SQL del desencadenador mediante la vista de administración dinámica dm_exec_sql_text.

63

StartTime

datetime

Hora a la que se inició el evento, si está disponible.

14

TextData

ntext

TriggerExecutionStats

1

PlanHandle

image

Identificador del plan compilado para el desencadenador. Se puede usar para obtener el plan XML mediante la vista de administración dinámica dm_exec_query_plan.

65

GroupID

int

Identificador del grupo de cargas de trabajo donde se activa el evento de seguimiento SQL.

66