Compartilhar via


sys.dm_exec_query_resource_semaphores (Transact-SQL)

Retorna as informações sobre o status de semáforo do recurso de consulta atual. sys.dm_exec_query_resource_semaphores fornece o status da memória geral de execução de consulta e permite determinar se o sistema pode acessar memória suficiente. Essa exibição complementa informações de memória obtidas de sys.dm_os_memory_clerks para fornecer uma imagem completa do status da memória do servidor. sys.dm_exec_query_resource_semaphores retorna uma linha para o semáforo de recurso normal e outra linha para o semáforo de recurso de consulta pequena.

Nome da coluna

Tipo de dados

Descrição

resource_semaphore_id

smallint

ID não exclusivo do sinal do recurso. 0 para o sinal do recurso normal e 1 para o sinal do recurso da consulta pequena.

target_memory_kb

bigint

Conceda o destino de uso em quilobytes.

max_target_memory_kb

bigint

Destino potencial máximo em quilobytes. NULL para o sinal do recurso da consulta pequena.

total_memory_kb

bigint

Memória usada pelo sinal do recurso em quilobytes. Se o sistema estiver sob pressão de memória ou se a memória mínima forçada for concedida com frequência, esse valor poderá ser maior que os valores de target_memory_kb ou max_target_memory_kb. A memória total é uma soma das memórias disponível e concedida.

available_memory_kb

bigint

Memória disponível para uma concessão nova em quilobytes.

granted_memory_kb

bigint

Total de memória concedida em quilobytes.

used_memory_kb

bigint

Parte fisicamente usada da memória concedida em quilobytes.

grantee_count

int

Número de consultas ativas com concessões atendidas.

waiter_count

int

Número de consultas que esperam as concessões serem atendidas.

timeout_error_count

bigint

Número total de erros de tempo-limite desde a inicialização do servidor. NULL para o sinal do recurso da consulta pequena.

forced_grant_count

bigint

Número total de concessões de memória mínimas forçadas desde a inicialização do servidor. NULL para o sinal do recurso da consulta pequena.

pool_id

int

ID do pool de recursos ao qual pertence este sinal do recurso.

Permissões

Requer a permissão VIEW SERVER STATE no servidor.

Comentários

As consultas que usam exibições de gerenciamento dinâmico com ORDER BY ou agregações podem aumentar o uso da memória e, dessa forma, contribuir para o problema que estão solucionando.

Use sys.dm_exec_query_resource_semaphores para solucionar problemas, mas não o inclua em aplicativos que utilizarão versões futuras do SQL Server.

O recurso Administrador de recursos permite que um administrador de banco de dados distribua recursos de servidor entre pools de recursos, até um máximo de 64 pools. No SQL Server 2012, cada pool se comporta como uma instância de servidor independente pequena e requer dois semáforos.

Consulte também

Referência

Funções e exibições de gerenciamento dinâmico relacionadas à execução (Transact-SQL)

sys.dm_exec_query_memory_grants (Transact-SQL)