次の方法で共有


sys.dm_os_memory_cache_clock_hands (Transact-SQL)

特定のキャッシュ クロックに関する各ハンドの状態を返します。

適用対象: SQL Server (SQL Server 2008 から現在のバージョンまで)

列名

データ型

説明

cache_address

varbinary(8)

クロックに関連付けられたキャッシュのアドレス。 NULL 値は許可されません。

name

nvarchar(256)

キャッシュの名前。 NULL 値は許可されません。

nvarchar(60)

キャッシュ保存の種類。 同じ種類のキャッシュが複数存在することが可能です。 NULL 値は許可されません。

clock_hand

nvarchar(60)

ハンドの種類。 次のいずれかになります。

  • 外部

  • 内部

NULL 値は許可されません。

clock_status

nvarchar(60)

クロックの状態。 次のいずれかになります。

  • 中断

  • 実行中

NULL 値は許可されません。

rounds_count

bigint

エントリを削除するため、キャッシュ経由で行われたスイープの数。 NULL 値は許可されません。

removed_all_rounds_count

bigint

すべてのスイープで削除されたエントリの数。 NULL 値は許可されません。

updated_last_round_count

bigint

前回のスイープ中に更新されたエントリの数。 NULL 値は許可されません。

removed_last_round_count

bigint

前回のスイープ中に削除されたエントリの数。 NULL 値は許可されません。

last_tick_time

bigint

クロック ハンドが前回移動した時間 (ミリ秒単位)。 NULL 値は許可されません。

round_start_time

bigint

前回のスイープの時間 (ミリ秒単位)。 NULL 値は許可されません。

last_round_start_time

bigint

前回のラウンドの完了でクロックに使用された合計時間 (ミリ秒単位)。 NULL 値は許可されません。

権限

サーバーに対する VIEW SERVER STATE 権限が必要です。

説明

SQL Server では、メモリ キャッシュと呼ばれる構造のメモリに情報が格納されます。 キャッシュには、データ、インデックス エントリ、コンパイル済みプロシージャ プランなど、SQL Server に関するさまざまな種類の情報が格納されます。 再作成の回数を最小限に抑えるため、これらの情報は可能な限り長くメモリ キャッシュに保持されます。これらの情報がキャッシュから削除されるのは、古くなりすぎて使えなくなった場合や、新しい情報を格納するためのメモリ領域が必要になった場合です。 この古くなった情報を削除する処理をメモリ スイープといいます。 メモリ スイープは頻繁に行われる処理ですが、連続的ではありません。 メモリ キャッシュのスイープはクロック アルゴリズムによって制御され、 1 つのクロックで複数のメモリ スイープを制御できます。この単位をハンドといいます。 メモリ キャッシュのクロック ハンドは、メモリ スイープの 1 つのハンドの現在位置を示します。

関連項目

参照

動的管理ビューおよび関数 (Transact-SQL)

SQL Server オペレーティング システム関連の動的管理ビュー (Transact-SQL)