対象者:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
アナリティクスプラットフォームシステム(PDW)
Microsoft FabricにおけるSQLデータベース
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 Basic、S0、S1 サービス目標、および弾性プール内のデータベースの場合サーバー管理者アカウント、Microsoft Entra 管理者アカウント、または##MS_ServerStateReader##サーバー ロールのメンバーシップが必要です。 他のすべての SQL Database サービス目標では、データベースに対する VIEW DATABASE STATE アクセス許可または ##MS_ServerStateReader## サーバー ロールのメンバーシップのいずれかが必要です。