SQL Server: Transactions オブジェクト
Microsoft SQL Server の Transactions オブジェクトには、データベース エンジンのインスタンスでアクティブなトランザクションの数と、tempdb のスナップショット分離行バージョン ストアなどのリソースに対するそれらのトランザクションの影響を監視するためのカウンターが用意されています。 トランザクションは、論理的な 1 つの作業単位です。つまり、一連の操作であり、すべて成功するか、データの論理的な整合性を維持するためにデータベースからすべて消去されるかのいずれかの結果になります。 SQL Server データベース内のデータのすべての変更は、トランザクションで行われます。
分離レベルスナップショット許可するようにデータベースが設定されている場合、SQL Serverは、データベース内の各行に加えられた変更のレコードを保持する必要があります。 行が変更されるたびに、変更前の状態の行のコピーが tempdb内の行バージョン ストアに記録されます。 Transaction オブジェクトの多くのカウンターは、 tempdb内の行バージョン ストアのサイズと増加率の監視に使用できます。
Transactions オブジェクト カウンターは、データベース エンジンの 1 つのインスタンス内のすべてのトランザクションを報告します。
次の表では、 SQLServer:Transactions のカウンターについて説明します。
SQL Server Transactions のカウンター | 説明 |
---|---|
Free Space in tempdb (KB) | tempdbの使用可能な領域 (KB)。 スナップショット分離レベルのバージョン ストアと、データベース エンジンのこのインスタンスで作成されたすべての新しい一時オブジェクトの両方を保持するのに十分な空き領域が必要です。 |
Longest Transaction Running Time | 現在のトランザクションの中で最も長くアクティブになっているトランザクションが開始してから現在までの継続時間 (秒)。 このカウンターがアクティビティを示すのは、データベースが READ COMMITTED スナップショット分離レベルの場合のみです。 データベースが他の分離レベルの場合、アクティビティはログに記録されません。 |
NonSnapshot Version Transactions | スナップショット分離レベルを使用していない現在アクティブなトランザクションのうち、データ変更を行ったトランザクションの数。データを変更すると、 tempdb のバージョン ストアに行バージョンが生成されます。 |
Snapshot Transactions | スナップショット分離レベルを使用している現在アクティブなトランザクションの数。 注:Snapshot Transactions オブジェクト カウンターは、 BEGIN TRANSACTION ステートメントが発行されたときではなく、最初のデータ アクセスが行われたときに応答します。 |
トランザクション | 現在アクティブなトランザクションの数。すべての種類が含まれます。 |
Update conflict ratio | この 1 秒間で更新の競合が発生した、スナップショット分離レベルを使用しているトランザクションの割合。 更新の競合が発生するのは、別のトランザクションによって最後に変更が行われ、スナップショット分離レベルのトランザクションの開始時にはコミットされていなかった行に対して、スナップショット分離レベルのトランザクションが変更を試行したときです。 |
Update Snapshot Transactions | スナップショット分離レベルを使用し、データを変更した現在アクティブなトランザクションの数。 |
Version Cleanup rate (KB/s) | tempdbのスナップショット分離のバージョン ストアから行バージョンが削除される比率 (KB/秒)。 |
Version Generation rate (KB/s) | tempdbのスナップショット分離のバージョン ストアに新しい行バージョンが追加される比率 (KB/秒)。 |
Version Store Size (KB) | スナップショット分離レベルの行バージョンを格納するために使用している、 tempdb 内の領域 (KB)。 |
Version Store unit count | tempdbのスナップショット分離のバージョン ストアでアクティブになっているアロケーション ユニットの数。 |
Version Store unit creation | データベース エンジンのインスタンスが開始されてから、スナップショット分離ストアに作成された割り当てユニットの数。 |
Version Store unit truncation | データベース エンジンのインスタンスが開始されてから、スナップショット分離ストアから削除された割り当てユニットの数。 |