SQL Server, Transactions 개체

적용 대상:SQL Server

Microsoft SQL Server의 Transactions 개체는 데이터베이스 엔진 인스턴스에서 활성 상태인 트랜잭션 수와 해당 트랜잭션이 스냅샷 격리 행 버전 저장소tempdb와 같은 리소스에 미치는 영향을 모니터링하는 카운터를 제공합니다. 트랜잭션은 논리적 작업 단위입니다. 데이터의 논리적 무결성을 기본 위해 데이터베이스에서 모두 성공하거나 모두 지워야 하는 작업 집합입니다. SQL Server 데이터베이스의 모든 데이터 수정은 트랜잭션에서 이루어집니다.

데이터베이스가 스냅샷 격리 수준을 허용하도록 설정된 경우 SQL Server는 데이터베이스의 각 행에 대한 수정된 레코드를 기본. 행을 수정할 때마다 수정이 행 버전 저장소에 기록되기 전의 행 복사본이 존재 tempdb합니다. Transactions 개체의 많은 카운터를 사용하여 행 버전 저장소의 크기 및 증가율을 모니터링할 수 있습니다tempdb.

Transactions 개체 카운터는 데이터베이스 엔진 한 인스턴스의 모든 트랜잭션을 보고합니다.

이 표에서는 SQLServer:Transactions 카운터에 대해 설명합니다.

SQL Server Transactions 카운터 설명
tempdb의 여유 공간(KB) 에서 사용할 수 있는 공간의 양(킬로바이트)입니다 tempdb. 스냅샷 격리 수준 버전 저장소와 이 데이터베이스 엔진 인스턴스에서 만든 모든 새 임시 개체를 모두 저장할 충분한 여유 공간이 있어야 합니다.
가장 긴 트랜잭션 실행 시간 다른 현재 트랜잭션보다 더 오래 활성화된 트랜잭션이 시작된 이후의 시간(초)입니다. 이 카운터는 데이터베이스가 커밋된 읽기 스냅샷 격리 수준에 있는 경우에만 활동을 표시합니다. 데이터베이스가 다른 격리 수준에 있는 경우 작업을 기록하지 않습니다.
비Snapshot 버전 트랜잭션 스냅샷 격리 수준을 사용하지 않고 버전 저장소에서 행 버전을 생성한 데이터를 수정한 현재 활성 트랜잭션 수 tempdb 입니다.
스냅샷 트랜잭션 스냅샷 격리 수준을 사용하는 현재 활성 트랜잭션 수입니다.

참고: Snapshot Transactions 개체 카운터는 첫 번째 데이터 액세스가 발생할 때 응답하지만 BEGIN TRANSACTION 문이 실행될 때는 응답하지 않습니다.
트랜잭션 모든 형식의 현재 활성 트랜잭션 수입니다.
충돌 비율 업데이트 마지막 1초 내에 업데이트 충돌이 발생한 스냅샷 격리 수준을 사용하는 트랜잭션의 비율입니다. 스냅샷 격리 수준 트랜잭션이 시작될 때 커밋되지 않은 다른 트랜잭션이 마지막으로 수정한 행을 스냅샷 격리 수준 트랜잭션에서 수정하려고 하면 업데이트 충돌이 발생합니다.
충돌 비율 기준 업데이트 내부 전용.
스냅샷 트랜잭션 업데이트 스냅샷 격리 수준을 사용하고 수정된 데이터가 있는 현재 활성 트랜잭션의 수입니다.
Version Cleanup rate (KB/s) 스냅샷 격리 버전 저장소tempdb에서 행 버전이 제거되는 속도(초당 킬로바이트)입니다.
Version Generation rate (KB/s) 새 행 버전이 스냅샷 격리 버전 저장소tempdb에 추가되는 속도(초당 킬로바이트)입니다.
Version Store Size (KB) 스냅샷 격리 수준 행 버전을 저장하는 데 사용되는 공간의 양(킬로바이트)tempdb입니다.
버전 저장소 단위 수 의 스냅샷 격리 버전 저장소에 있는 tempdb활성 할당 단위 수입니다.
버전 저장소 단위 만들기 데이터베이스 엔진 인스턴스가 시작된 이후 스냅샷 격리 저장소에 생성된 할당 단위의 수입니다.
버전 저장소 단위 잘림 데이터베이스 엔진 인스턴스가 시작된 이후 스냅샷 격리 저장소에서 제거된 할당 단위의 수입니다.

예시

sys.dm_os_performance_counters 동적 관리 뷰에서 이 T-SQL 쿼리를 사용하여 이 개체의 쿼리 성능 카운터를 탐색하기 시작합니다.

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