다음을 통해 공유


SQL Server, 트랜잭션 객체

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

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

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

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

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

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

또한 참조하십시오

리소스 자원 배정 현황 모니터링(시스템 모니터)