Поделиться через


SQL Server, объект Transactions

Область применения: SQL Server

Объект Transactions в Microsoft SQL Server предоставляет счетчики для отслеживания количества транзакций, активных в экземпляре ядро СУБД, и эффекты этих транзакций на ресурсы, такие как хранилище tempdbверсий изоляции моментальных снимков. Транзакции представляют собой логические блоки проделанной работы — наборы операций, которые должны либо все завершиться успешно, либо быть стертыми из базы данных, чтобы соблюсти логическую целостность данных. Все изменения данных в базах данных SQL Server выполняются в транзакциях.

Если для базы данных задан уровень изоляции моментальных снимков, SQL Server должен хранить запись изменений, внесенных в каждую строку в базе данных. Каждый раз при изменении строки копия строки, как она существовала до записи изменения в хранилище версий строк.tempdb Многие счетчики в объекте Transactions также можно применять для мониторинга размера и скорости роста хранилища версий строк в tempdb.

Счетчики объектов Transactions сообщают обо всех транзакциях в одном экземпляре ядро СУБД.

В этой таблице перечислены счетчики SQLServer:Transactions .

Счетчики Transactions в SQL Server Description
Свободное пространство в базе данных tempdb (КБ) Объем пространства (в килобайтах), доступный в tempdb. Достаточно свободного места для хранения хранилища версий уровня изоляции моментальных снимков и всех новых временных объектов, созданных в этом экземпляре ядро СУБД.
Наиболее продолжительное время выполнения транзакции Время (в секундах) с момента запуска транзакции, которая оставалась активной дольше любой другой текущей транзакции. Этот счетчик показывает только действия, произошедшие при базе данных на уровне изоляции зафиксированной операции чтения с моментальным снимком. Он не регистрирует других действий, если база данных находится в другом уровне изоляции.
Транзакций версий без снимков Количество активных транзакций, которые не используют уровень изоляции моментальных снимков и внесли изменения данных, которые создали версии строк в tempdb хранилище версий.
Транзакции моментальных снимков Число активных в настоящий момент транзакций, которые используют уровень изоляции моментальных снимков.

Примечание. Счетчик объекта Snapshot Transactions возвращает данные о том, когда произошло первое обращение к данным, а не когда была выполнена инструкция BEGIN TRANSACTION .
Транзакции Число активных в настоящее время транзакций любого типа.
Коэффициент конфликтов обновления Процент транзакций, использующих уровень изоляции моментальных снимков, которые столкнулись с конфликтами обновления за последнюю секунду. Конфликт обновления возникает, когда транзакция уровня изоляции моментальных снимков пытается изменить строку, которая в последний раз была изменена другой транзакцией, незафиксированной на момент запуска транзакции уровня изоляции снимков.
База коэффициента обновления конфликтов Только для внутреннего пользования.
Транзакции обновления моментальных снимков Число активных в настоящий момент транзакций, которые используют уровень изоляции моментальных снимков и содержат измененные данные.
Скорость очистки версий (КБ/с) Скорость (в килобайтах в секунду), при которой версии строк удаляются из хранилища версий изоляции моментальных снимков.tempdb
Скорость создания версий (КБ/с) Скорость (в килобайтах в секунду), при которой новые версии строк добавляются в хранилище версий изоляции моментальных снимков.tempdb
Размер хранилища версий (KБ) Объем пространства (в килобайтах) для tempdb хранения версий строк уровня изоляции моментальных снимков.
Счетчик блоков хранилища версий Количество активных единиц выделения в хранилище tempdbверсий изоляции моментальных снимков.
Создано блоков хранилища версий Количество единиц выделения, созданных в хранилище изоляции моментальных снимков с момента запуска экземпляра ядро СУБД.
Усечено блоков хранилища версий Количество единиц выделения, которые были удалены из хранилища изоляции моментальных снимков с момента запуска экземпляра ядро СУБД.

Пример

Вы начинаете изучать счетчики производительности запросов в этом объекте, используя этот запрос T-SQL в динамическом административном представлении sys.dm_os_performance_counters:

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