sys.dm_os_hosts (Transact-SQL)

Devuelve todos los host registrados actualmente en una instancia de SQL Server. Esta vista también devuelve los recursos utilizados por estos host.

Nombre de columna

Tipo de datos

Descripción

host_address

varbinary(8)

Dirección de memoria interna del objeto host.

type

nvarchar(60)

Tipo de componente alojado. Por ejemplo,

SOSHOST_CLIENTID_SERVERSNI= Interfaz de SQL Server Native

SOSHOST_CLIENTID_SQLOLEDB = Proveedor OLE DB de SQL Server Native Client

SOSHOST_CLIENTID_MSDART = Tiempo de ejecución de Microsoft Data Access

name

nvarchar(32)

Nombre del host.

enqueued_tasks_count

int

Número total de tareas que este host ha colocado en colas en SQL Server.

active_tasks_count

int

Número de tareas actualmente en ejecución que este host ha colocado en colas.

completed_ios_count

int

Número total de E/S emitidas y completadas mediante este host.

completed_ios_in_bytes

bigint

Recuento total de bytes de E/S completadas mediante este host.

active_ios_count

int

Número total de solicitudes de E/S relacionadas con este host que esperan actualmente a completarse.

default_memory_clerk_address

varbinary(8)

Dirección de memoria del objeto del empleado de memoria asociado a este host. Para obtener más información, vea sys.dm_os_memory_clerks (Transact-SQL).

Permisos

Requiere el permiso VIEW SERVER STATE en el servidor.

Comentarios

SQL Server permite componentes, como un proveedor OLE DB, que no forman parte del ejecutable de SQL Server para asignar memoria y participar en la programación no preferente. SQL Server aloja estos componentes y se realiza un seguimiento de todos los recursos asignados por ellos. El alojamiento permite a SQL Server contar mejor con los recursos usados por componentes externos al ejecutable de SQL Server.

Cardinalidades de relación

De

A

Relación

sys.dm_os_hosts. default_memory_clerk_address

sys.dm_os_memory_clerks. memory_clerk_address

uno a uno

sys.dm_os_hosts. host_address

sys.dm_os_memory_clerks. host_address

uno a uno

Ejemplos

En el ejemplo siguiente se determina la cantidad total de memoria confirmada por un componente alojado.

SELECT h.type, SUM(single_pages_kb + multi_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;