SQL Server:Locks オブジェクト
Microsoft SQL Server の SQLServer:Locks オブジェクトでは、各リソースの種類の SQL Server ロックに関する情報を提供します。 ロックは、複数のトランザクションで同じ SQL Server リソースが同時に使用されるのを防ぐために、トランザクション中に読み取られたり変更されたりする行などにかけられます。 たとえば、あるトランザクションによってテーブルの行に排他 (X) ロックがかけられると、他のトランザクションはロックが解除されるまでその行を変更できません。 ロックを最小限にとどめるとコンカレンシーが向上し、パフォーマンスが向上します。 異なる種類のリソースのロックを表す複数の Locks オブジェクトのインスタンスを同時に監視することができます。
次の表では、SQL Server Locks カウンターについて説明します。
SQL Server:Locks カウンター | 説明 |
---|---|
Average Wait Time (ms) | 待つ必要がある各ロック要求の平均待ち時間 (ミリ秒)。 |
Lock Requests/sec | ロック マネージャーから 1 秒あたりに要求された新しいロックと、ロック変換の数。 |
ロック タイムアウト (タイムアウト > 0)/秒 | NOWAIT ロックの要求を除く、1 秒あたりにタイムアウトしたロック要求の数。 |
Lock Timeouts/sec | NOWAIT ロックの要求を含めた、1 秒あたりにタイムアウトしたロック要求の数。 |
Lock Wait Time (ms) | 最後の 1 秒間のロックの総待機時間 (ミリ秒)。 |
Lock Waits/sec | 呼び出し元が待つ必要のあった 1 秒あたりのロック要求の数。 |
Number of Deadlocks/sec | デッドロックが発生した 1 秒あたりのロック要求の数。 |
SQL Server では、以下のリソースをロックできます。
項目 | 説明 |
---|---|
_Total | すべてのロックに関する情報。 |
AllocUnit | アロケーション ユニットのロック。 |
Application | アプリケーションで指定されているリソースのロック。 |
[データベース] | データベース内のすべてのオブジェクトを含むデータベースのロック。 |
Extent | 連続した 8 ページのグループのロック。 |
[最近使ったファイル] | データベース ファイルのロック。 |
Heap/BTree | ヒープまたは BTree (HOBT)。 データ ページのヒープまたはインデックスの BTree 構造のロック。 |
キー | インデックスの行のロック。 |
Metadata | カタログ情報 (メタデータ) のロック。 |
Object | すべてのデータとインデックスを含む、テーブル、ストアド プロシージャ、ビューなどのロック。 このオブジェクトには、 sys.all_objects内のエントリを持つ任意のアイテムが含まれます。 |
ページ | データベース内の 8 KB のページのロック。 |
RID | 行 ID。 ヒープ内の単一行のロック。 |