sys.dm_os_hosts (Transact-SQL)

Применимо к: SQL Server Azure SQL DatabaseУправляемый экземпляр SQL AzureAzure Synapse AnalyticsAnalytics Platform System (PDW)

Возвращает все узлы, зарегистрированные в экземпляре SQL Server. Это представление также возвращает ресурсы, используемые перечисляемыми узлами.

Примечание

Чтобы вызвать его из Azure Synapse Analytics или Analytics Platform System (PDW), используйте имя sys.dm_pdw_nodes_os_hosts. Этот синтаксис не поддерживается бессерверным пулом SQL в Azure Synapse Analytics.

Имя столбца Тип данных Описание
host_address varbinary(8) Внутренний адрес в памяти объекта узла.
type nvarchar(60) Тип размещенного компонента. Например, примененная к объекту директива

SOSHOST_CLIENTID_SERVERSNI = собственный интерфейс SQL Server;

SOSHOST_CLIENTID_SQLOLEDB = поставщик OLE DB для собственного клиента SQL Server;

SOSHOST_CLIENTID_MSDART = компоненты доступа к данным MDA.
name nvarchar(32) Имя узла.
enqueued_tasks_count int Общее количество задач, помещенных этим узлом в очереди в SQL Server.
active_tasks_count int Количество выполняющихся в данный момент задач, помещенных этим узлом в очереди.
completed_ios_count int Количество операций ввода-вывода, инициированных и выполненных посредством этого узла.
completed_ios_in_bytes bigint Суммарное количество байтов, обработанных в операциях ввода-вывода посредством этого узла.
active_ios_count int Общее количество запросов ввода-вывода, относящихся к этому узлу, ожидающих завершения в настоящее время.
default_memory_clerk_address varbinary(8) Адрес в памяти объекта клерка памяти, связанного с этим узлом. Для получения дополнительной информации см. sys.dm_os_memory_clerks (Transact-SQL).
pdw_node_id int Область применения: Azure Synapse Analytics, Analytics Platform System (PDW)

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

Разрешения

На SQL Server и управляемом экземпляре SQL необходимо разрешение VIEW SERVER STATE.

Для целей обслуживания баз данных SQL уровня "Базовый", S0 и S1, а также для баз данных в эластичных пулах необходимо иметь учетную запись администратора сервера, администратора Azure Active Directory или членство ##MS_ServerStateReader##в роли сервера. Для всех остальных целей обслуживания базы данных SQL требуется разрешение VIEW DATABASE STATE в базе данных или членство в роли сервера ##MS_ServerStateReader##.

Разрешения для SQL Server 2022 и более поздних версий

Требуется разрешение VIEW SERVER PERFORMANCE STATE на сервере.

Комментарии

SQL Server позволяет компонентам, таким как поставщик OLE DB, которые не являются частью исполняемого файла SQL Server, выделять память и участвовать в планировании без вытеснения. Эти компоненты размещаются SQL Server, а все ресурсы, выделенные этими компонентами, отслеживаются. Размещение позволяет SQL Server лучше учитывать ресурсы, используемые компонентами, внешними по SQL Server исполняемому файлу.

Количество элементов связей

Исходный тип Кому Связь
sys.dm_os_hosts. default_memory_clerk_address sys.dm_os_memory_clerks. memory_clerk_address один к одному
sys.dm_os_hosts. host_address sys.dm_os_memory_clerks. host_address один к одному

Примеры

В следующем примере определяется общий объем памяти, задействованной размещенным компонентом.

Область применения: SQL Server 2012 (11.x) и более поздних версий.
SELECT h.type, SUM(mc.pages_kb) AS commited_memory  
FROM sys.dm_os_memory_clerks AS mc   
INNER JOIN sys.dm_os_hosts AS h   
    ON mc.memory_clerk_address = h.default_memory_clerk_address  
GROUP BY h.type;  

См. также раздел

sys.dm_os_memory_clerks (Transact-SQL)
Динамические административные представления, относящиеся к операционной системе SQL Server (Transact-SQL)