Класс событий Performance Statistics
Класс событий Performance Statistics можно использовать для наблюдения за производительностью выполняемых запросов, хранимых процедур и триггеров. Каждый из шести подклассов событий обозначает событие, относящееся ко времени существования запросов, хранимых процедур и триггеров в системе. Сочетая эти подклассы событий и связанные с ними динамические административные представления sys.dm_exec_query_stats, sys.dm_exec_procedure_stats и sys.dm_exec_trigger_stats, можно восстановить историю производительности любого заданного запроса, хранимой процедуры или триггера.
Столбцы данных класса событий Performance Statistics
Следующие таблицы описывают столбцы данных класса событий, связанные с каждым из следующих подклассов событий: EventSubClass 0, EventSubClass 1, EventSubClass 2, EventSubClass 3, EventSubClass 4 и EventSubClass 5.
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
NULL |
52 |
Да |
BinaryData |
image |
NULL |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, указанной в инструкции USE database, или базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Программа Приложение SQL Server Profiler отображает имя базы данных, если столбец данных ServerName фиксируется при трассировке и при этом сервер доступен. Значение для базы данных можно определить, используя функцию DB_ID. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
EventSubClass |
int |
Тип подкласса события: 0 = Новый текст пакета SQL, который пока отсутствует в кэше. Следующие типы EventSubClass создаются в трассировке для нерегламентированных пакетов. Для нерегламентированных пакетов, состоящих из n запросов.
|
21 |
Да |
IntegerData2 |
int |
NULL |
55 |
Да |
ObjectID |
int |
NULL |
22 |
Да |
Offset |
int |
NULL |
61 |
Да |
PlanHandle |
Image |
NULL |
65 |
Да |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при подключении к SQL Server по имени Login1 и при выполнении инструкции под именем Login2, SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL, который можно использовать для получения текста SQL пакета с помощью динамического административного представления sys.dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
Текст пакета SQL. |
1 |
Да |
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
Совокупное количество повторных компиляций данного плана. |
52 |
Да |
BinaryData |
image |
Двоичный XML скомпилированного плана. |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, указанной в инструкции USE database, или базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Программа Приложение SQL Server Profiler отображает имя базы данных, если столбец данных ServerName фиксируется при трассировке и при этом сервер доступен. Значение для базы данных можно определить, используя функцию DB_ID. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при соединении с SQL Server под именем Login1 и при выполнении инструкции под именем Login2 SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
EventSubClass |
int |
Тип подкласса события: 1 = Скомпилированы запросы в хранимой процедуре. Следующие типы EventSubClass создаются в трассировке для хранимых процедур. Для хранимых процедур, состоящих из n запросов.
|
21 |
Да |
IntegerData2 |
int |
Конечное смещение инструкции в хранимой процедуре: -1 для конечного смещения хранимой процедуры. |
55 |
Да |
ObjectID |
int |
Назначенный системой идентификатор объекта. |
22 |
Да |
Offset |
int |
Начальное смещение инструкции в пределах хранимой процедуры или пакета. |
61 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL, который можно использовать для получения текста SQL хранимой процедуры с помощью динамического административного представления dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
NULL |
1 |
Да |
PlanHandle |
image |
Дескриптор скомпилированного плана для хранимой процедуры. Может быть использован для получения плана XML с помощью динамического административного представления sys.dm_exec_query_plan. |
65 |
Да |
ObjectType |
int |
Значение, представляющее тип объекта, связанного с событием. 8272 = хранимая процедура. |
28 |
Да |
BigintData2 |
bigint |
Общий объем памяти в килобайтах, используемой во время компиляции. |
53 |
Да |
ЦП |
int |
Общее процессорное время в миллисекундах, затраченное на компиляцию. |
18 |
Да |
Длительность |
int |
Общее время в микросекундах, затраченное на компиляцию. |
13 |
Да |
IntegerData |
int |
Размер скомпилированного плана в килобайтах. |
25 |
Да |
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
Совокупное количество повторных компиляций данного плана. |
52 |
Да |
BinaryData |
image |
Двоичный XML скомпилированного плана. |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, указанной в инструкции USE database, или базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Программа Приложение SQL Server Profiler отображает имя базы данных, если столбец данных ServerName фиксируется при трассировке и при этом сервер доступен. Значение для базы данных можно определить, используя функцию DB_ID. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при соединении с SQL Server под именем Login1 и при выполнении инструкции под именем Login2 SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
EventSubClass |
int |
Тип подкласса события: 2 = Скомпилированы запросы в нерегламентированной инструкции SQL. Следующие типы EventSubClass создаются в трассировке для нерегламентированных пакетов. Для нерегламентированных пакетов, состоящих из n запросов.
|
21 |
Да |
IntegerData2 |
int |
Конечное смещение инструкции в пакете: -1 для конечного смещения пакета. |
55 |
Да |
ObjectID |
int |
н/д |
22 |
Да |
Offset |
int |
Начальное смещение инструкции в пределах пакета. 0 для начального смещения пакета. |
61 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL. Может быть использован для получения текста SQL пакета с помощью динамического административного представления dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
NULL |
1 |
Да |
PlanHandle |
image |
Дескриптор скомпилированного плана для пакета. Может быть использован для получения плана XML пакета с помощью динамического административного представления dm_exec_query_plan. |
65 |
Да |
BigintData2 |
bigint |
Общий объем памяти в килобайтах, используемой во время компиляции. |
53 |
Да |
CPU |
int |
Общее процессорное время в микросекундах, затраченное на компиляцию. |
18 |
Да |
Длительность |
int |
Общее время в миллисекундах, затраченное на компиляцию. |
13 |
Да |
IntegerData |
int |
Размер скомпилированного плана в килобайтах. |
25 |
Да |
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
Совокупное количество повторных компиляций данного плана. |
52 |
Да |
BinaryData |
image |
NULL |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, указанной в инструкции USE database, или базы данных по умолчанию, если для данного экземпляра инструкция USE database не выполнялась. Программа Приложение SQL Server Profiler отображает имя базы данных, если столбец данных ServerName фиксируется при трассировке и при этом сервер доступен. Значение для базы данных можно определить, используя функцию DB_ID. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при соединении с SQL Server под именем Login1 и при выполнении инструкции под именем Login2 SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
EventSubClass |
int |
Тип подкласса события: 3 = Запрос удален из кэша, и данные предыстории производительности этого плана тоже будут уничтожены. Следующие типы EventSubClass формируются при трассировке. Для нерегламентированных пакетов, состоящих из n запросов.
Для хранимых процедур, состоящих из n запросов.
|
21 |
Да |
IntegerData2 |
int |
Конечное смещение инструкции в хранимой процедуре или пакете: -1 для конечного смещения хранимой процедуры или пакета. |
55 |
Да |
ObjectID |
int |
NULL |
22 |
Да |
Offset |
int |
Начальное смещение инструкции в пределах хранимой процедуры или пакета: 0 для начального смещения хранимой процедуры или пакета. |
61 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL, который можно использовать для получения текста SQL хранимой процедуры или пакета с помощью динамического административного представления dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
QueryExecutionStats |
1 |
Да |
PlanHandle |
image |
Дескриптор скомпилированного плана для хранимой процедуры или пакета. Может быть использован для получения плана XML с помощью динамического административного представления dm_exec_query_plan. |
65 |
Да |
GroupID |
int |
Идентификатор группы рабочей нагрузки, в которой запускается событие SQL Trace. |
66 |
Да |
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
NULL |
52 |
Да |
BinaryData |
image |
NULL |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, в которой располагается заданная хранимая процедура. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при соединении с SQL Server под именем Login1 и при выполнении инструкции под именем Login2 SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
EventSubClass |
int |
Подкласс типа событий. 4 = Кэшированная хранимая процедура удалена из кэша, и связанные с ней данные об истории производительности будут уничтожены. |
21 |
Да |
IntegerData2 |
int |
NULL |
55 |
Да |
ObjectID |
int |
Идентификатор хранимой процедуры. Соответствует столбцу object_id в представлении sys.procedures. |
22 |
Да |
Offset |
int |
NULL |
61 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL, который можно использовать для получения текста SQL хранимой процедуры, выполненной с помощью динамического административного представления dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
ProcedureExecutionStats |
1 |
Да |
PlanHandle |
image |
Дескриптор скомпилированного плана для хранимой процедуры. Может быть использован для получения плана XML с помощью динамического административного представления dm_exec_query_plan. |
65 |
Да |
GroupID |
int |
Идентификатор группы рабочей нагрузки, в которой запускается событие SQL Trace. |
66 |
Да |
Имя столбца данных |
Тип данных |
Описание |
Идентификатор столбца |
Фильтруемый |
---|---|---|---|---|
BigintData1 |
bigint |
NULL |
52 |
Да |
BinaryData |
image |
NULL |
2 |
Да |
DatabaseID |
int |
Идентификатор базы данных, в которой располагается заданный триггер. |
3 |
Да |
EventSequence |
int |
Порядковый номер этого события в запросе. |
51 |
Нет |
SessionLoginName |
nvarchar |
Имя входа пользователя, создавшего сеанс. Например, при соединении с SQL Server под именем Login1 и при выполнении инструкции под именем Login2 SessionLoginName будет содержать значение Login1, а LoginName — значение Login2. В данном столбце отображаются имена входа SQL Server и Windows. |
64 |
Да |
EventSubClass |
int |
Подкласс типа событий. 5 = Кэшированный триггер удален из кэша, и связанные с ним данные об истории производительности будут уничтожены. |
21 |
Да |
IntegerData2 |
int |
NULL |
55 |
Да |
ObjectID |
int |
Идентификатор триггера. Соответствует столбцу object_id в представлениях каталогов sys.triggers/sys.server_triggers. |
22 |
Да |
Offset |
int |
NULL |
61 |
Да |
SPID |
int |
Идентификатор сеанса, во время которого произошло событие. |
12 |
Да |
SqlHandle |
image |
Дескриптор SQL, который можно использовать для получения текста SQL триггера с помощью динамического административного представления dm_exec_sql_text. |
63 |
Да |
StartTime |
datetime |
Время начала события, если оно известно. |
14 |
Да |
TextData |
ntext |
TriggerExecutionStats |
1 |
Да |
PlanHandle |
image |
Дескриптор скомпилированного плана для триггера. Может быть использован для получения плана XML с помощью динамического административного представления dm_exec_query_plan. |
65 |
Да |
GroupID |
int |
Идентификатор группы рабочей нагрузки, в которой запускается событие SQL Trace. |
66 |
Да |