sys.dm_os_memory_cache_counters (Transact-SQL)
Applies to: SQL Server Azure Synapse Analytics Analytics Platform System (PDW)
Returns a snapshot of the health of a cache in SQL Server. sys.dm_os_memory_cache_counters provides run-time information about the cache entries allocated, their use, and the source of memory for the cache entries.
Note
To call this from Azure Synapse Analytics or Analytics Platform System (PDW), use the name sys.dm_pdw_nodes_os_memory_cache_counters. This syntax is not supported by serverless SQL pool in Azure Synapse Analytics.
Column name | Data type | Description |
---|---|---|
cache_address | varbinary(8) | Indicates the address (primary key) of the counters associated with a specific cache. Is not nullable. |
name | nvarchar(256) | Specifies the name of the cache. Is not nullable. |
type | nvarchar(60) | Indicates the type of cache that is associated with this entry. Is not nullable. |
single_pages_kb | bigint | Applies to: SQL Server 2008 (10.0.x) through SQL Server 2008 R2 (10.50.x). Amount, in kilobytes, of the single-page memory allocated. This is the amount of memory allocated by using the single-page allocator. This refers to the 8-KB pages that are taken directly from the buffer pool for this cache. Is not nullable. |
pages_kb | bigint | Applies to: SQL Server 2012 (11.x) and later. Specifies the amount, in kilobytes, of the memory allocated in the cache. Is not nullable. |
multi_pages_kb | bigint | Applies to: SQL Server 2008 (10.0.x) through SQL Server 2008 R2 (10.50.x). Amount, in kilobytes, of the multipage memory allocated. This is the amount of memory allocated by using the multiple-page allocator of the memory node. This memory is allocated outside the buffer pool and takes advantage of the virtual allocator of the memory nodes. Is not nullable. |
pages_in_use_kb | bigint | Applies to: SQL Server 2012 (11.x) and later. Specifies the amount, in kilobytes, of the memory that is allocated and in use in the cache. Is nullable. Values for objects of type USERSTORE_<*> are not tracked. NULL is reported for them. |
single_pages_in_use_kb | bigint | Applies to: SQL Server 2008 (10.0.x) through SQL Server 2008 R2 (10.50.x). Amount, in kilobytes, of the single-page memory that is being used. Is nullable. This information is not tracked for objects of type USERSTORE_<*> and these values will be NULL. |
multi_pages_in_use_kb | bigint | Applies to: SQL Server 2008 (10.0.x) through SQL Server 2008 R2 (10.50.x). Amount, in kilobytes, of the multipage memory that is being used. NULLABLE. This information is not tracked for objects of type USERSTORE_<*>, and these values will be NULL. |
entries_count | bigint | Indicates the number of entries in the cache. Is not nullable. |
entries_in_use_count | bigint | Indicates the number of entries in the cache that is being used. Is not nullable. |
pdw_node_id | int | Applies to: Azure Synapse Analytics, Analytics Platform System (PDW) The identifier for the node that this distribution is on. |
Permissions
On SQL Server and SQL Managed Instance, requires VIEW SERVER STATE
permission.
On SQL Database Basic, S0, and S1 service objectives, and for databases in elastic pools, the server admin account, the Microsoft Entra admin account, or membership in the ##MS_ServerStateReader##
server role is required. On all other SQL Database service objectives, either the VIEW DATABASE STATE
permission on the database, or membership in the ##MS_ServerStateReader##
server role is required.
Permissions for SQL Server 2022 and later
Requires VIEW SERVER PERFORMANCE STATE permission on the server.
See also
SQL Server Operating System Related Dynamic Management Views (Transact-SQL)