次の方法で共有


sys.dm_os_memory_cache_entries (Transact-SQL)

適用対象: SQL Server Azure Synapse Analytics Analytics Platform System (PDW)

SQL Server のキャッシュ内のすべてのエントリに関する情報を返します。 このビューを使用して、キャッシュ エントリを関連するオブジェクトにトレースします。 このビューを使用して、キャッシュ エントリの統計情報を取得することもできます。

Note

これを Azure Synapse Analytics または Analytics Platform System (PDW) から呼び出すには、 sys.dm_pdw_nodes_os_memory_cache_entriesという名前を使用します。 この構文は、Azure Synapse Analytics のサーバーレス SQL プールでサポートされていません。

列名 データ型 説明
cache_address varbinary(8) キャッシュのアドレス。 NULL 値は許可されません。
name nvarchar (256) キャッシュの名前。 NULL 値は許可されません。
type varchar(60) キャッシュの種類。 NULL 値は許可されません。
entry_address varbinary(8) キャッシュ エントリの記述子のアドレス。 NULL 値は許可されません。
entry_data_address varbinary(8) キャッシュ エントリ内のユーザー データのアドレス。

0x00000000 = エントリ データ アドレスは使用できません。

NULL 値は許可されません。
in_use_count int このキャッシュ エントリの同時ユーザー数。 NULL 値は許可されません。
is_dirty bit このキャッシュ エントリが削除対象としてマークされているかどうかを示します。 1 = 削除対象としてマークされます。 NULL 値は許可されません。
disk_ios_count int このエントリの作成中に発生した I/O の数。 NULL 値は許可されません。
context_switches_count int このエントリの作成中に発生したコンテキスト スイッチの数。 NULL 値は許可されません。
original_cost int エントリの元のコスト。 この値は、発生した I/O の数、CPU 命令コスト、およびエントリによって消費されるメモリの量の概算です。 コストが大きいほど、アイテムがキャッシュから削除される可能性は低くなります。 NULL 値は許可されません。
current_cost int キャッシュ エントリの現在のコスト。 この値はエントリの削除プロセス中に更新されます。 現在のコストは、エントリの再利用時に元の値にリセットされます。 NULL 値は許可されません。
memory_object_address varbinary(8) 関連付けられているメモリ オブジェクトのアドレス。 Null 許容。
pages_allocated_count bigint 適用対象: SQL Server 2008 (10.0.x) から SQL Server 2008 R2 (10.50.x)。

キャッシュ エントリを格納する 8 KB ページの数。 NULL 値は許可されません。
pages_kb bigint 適用対象: SQL Server 2012 (11.x) 以降のバージョン。

このキャッシュ エントリで使用されるメモリの量 (KB 単位)。 NULL 値は許可されません。
entry_data nvarchar(2048) キャッシュされたエントリのシリアル化された表現。 この情報はキャッシュ ストアに依存します。 Null 許容。
pool_id int 適用対象: SQL Server 2008 R2 (10.50.x) 以降のバージョン。

エントリに関連付けられているリソース プール ID。 Null 許容。
pdw_node_id int 適用対象: Azure Synapse Analytics、Analytics Platform System (PDW)

このディストリビューションがオンになっているノードの識別子。

アクセス許可

SQL Server と Azure SQL Managed Instance の場合は、 VIEW SERVER STATE アクセス許可が必要です。

SQL Server 2022 (16.x) 以降のバージョンでは、サーバーに対する VIEW SERVER PERFORMANCE STATE アクセス許可が必要です。

Azure SQL Database BasicS0S1 サービス目標、および弾性プール内のデータベースの場合サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または##MS_ServerStateReader## サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE アクセス許可または ##MS_ServerStateReader## サーバー ロールのメンバーシップのいずれかが必要です。