Skip to main content
sys.dm_os_memory_clerks (Transact-SQL)
 

ПРИМЕНЯЕТСЯ К: даSQL Server (начиная с 2008) даБаза данных SQL Azure даХранилище данных SQL Azure даParallel Data Warehouse

Возвращает набор всех клерков памяти, активных в данный момент в экземпляре SQL Server.

System_CAPS_ICON_note.jpg Примечание


Вызывать его из Хранилище данных SQL Azure или Параллельное хранилище данных, используйте имя sys.dm_pdw_nodes_os_memory_clerks.

Имя столбцаТип данныхDescription
memory_clerk_addressvarbinary(8)Указывает уникальный адрес клерка памяти. Это первичный ключевой столбец. Не допускает значение NULL.
typenvarchar(60)Указывает тип клерка памяти. Каждый клерк принадлежит к определенному типу, такому как CLR Clerks MEMORYCLERK_SQLCLR. Не допускает значение NULL.
namenvarchar(256)Указывает внутреннее имя, назначенное данному клерку памяти. Компонент может иметь несколько клерков памяти определенного типа. Компонент может использовать определенные имена для идентификации клерков памяти одного и того же типа. Не допускает значение NULL.
memory_node_idsmallintУказывает идентификатор узла памяти. Не допускает значения NULL.
single_pages_kbbigintОбласть применения: начиная с SQL Server 2008 до SQL Server 2008 R2.
pages_kbbigintОбласть применения: начиная с SQL Server 2012 до SQL Server 2016.

Устанавливает объем страничной памяти (в килобайтах), выделяемый для этого клерка памяти. Не допускает значение NULL.
multi_pages_kbbigintОбласть применения: начиная с SQL Server 2008 до SQL Server 2008 R2.

Объем выделенной многостраничной памяти в КБ. Это объем памяти, выделенной с помощью механизма распределения множества страниц узлов памяти. Эта память выделена вне буферного пула и использует преимущества виртуального блока распределения узлов памяти. Не допускает значение NULL.
virtual_memory_reserved_kbbigintУказывает объем виртуальной памяти, зарезервированной клерком памяти. Не допускает значение NULL.
virtual_memory_committed_kbbigintУказывает объем виртуальной памяти, зафиксированной клерком памяти. Объем зафиксированной памяти должен всегда быть меньше объема зарезервированной памяти. Не допускает значение NULL.
awe_allocated_kbbigintУказывает объем физической памяти (в КБ), заблокированной в физической памяти и не выгруженной операционной системой. Не допускает значение NULL.
shared_memory_reserved_kbbigintУказывает объем общей памяти, зарезервированной клерком памяти. Объем памяти, зарезервированной для использования при сопоставлении общей памяти и файлов. Не допускает значение NULL.
shared_memory_committed_kbbigintУказывает объем общей памяти, зафиксированной клерком памяти. Не допускает значение NULL.
page_size_in_bytesbigintУказывает гранулярность выделения страниц для этого клерка памяти. Не допускает значение NULL.
page_allocator_addressvarbinary(8)Указывает адрес средства выделения страниц. Этот адрес уникален для клерка памяти и может использоваться в sys.dm_os_memory_objects для поиска объектов памяти, связанных с данным клерком. Не допускает значение NULL.
host_addressvarbinary(8)Указывает адрес памяти, по которому размещается данный клерк памяти. Дополнительные сведения см. в разделе sys.dm_os_hosts (Transact-SQL). Компоненты, такие как Microsoft SQL Server Native Client access SQL Server ресурсов памяти через интерфейс узла.

0x00000000 = Клерк памяти принадлежит SQL Server.

Не допускает значение NULL.
pdw_node_idintПрименяется к: Хранилище данных SQL Azure,Параллельное хранилище данных

Идентификатор узла, который это распределение.

необходимо разрешение VIEW SERVER STATE на сервере.

Диспетчер памяти SQL Server имеет трехуровневую иерархию. В нижней части иерархии располагаются узлы памяти. Средний уровень содержит клерки, кэш и пулы памяти. Верхний уровень содержит объекты памяти. Эти объекты обычно используются для выделения памяти в экземпляре SQL Server.

Узлы памяти обеспечивают интерфейс и реализацию низкоуровневых механизмов выделения. В пределах SQL Server доступ к узлам памяти имеют только клерки памяти. Клерки памяти получают доступ к интерфейсам узлов памяти для ее выделения. Узлы памяти также ведут слежение за выделяемой клерками памятью в целях диагностики. Каждый компонент, выделяющий значительный объем памяти, должен создать свой клерк памяти и выделить необходимую ему память с помощью интерфейсов клерка. Часто компоненты создают соответствующие им клерки во время запуска SQL Server.

Динамические административные представления и функции (Transact-SQL)
Динамические административные представления (Transact-SQL) относящиеся к операционной системе SQL Server
sys.dm_os_sys_info (Transact-SQL)
sys.dm_exec_query_memory_grants (Transact-SQL)
sys.dm_exec_requests (Transact-SQL)
sys.dm_exec_query_plan (Transact-SQL)
sys.dm_exec_sql_text (Transact-SQL)