sys.dm_exec_query_resource_semaphores (Transact-SQL)
Retorna informações sobre o status do sinal do recurso de consulta atual. sys.dm_exec_query_resource_semaphores oferece o status de memória de execução da consulta geral e permite determinar se o sistema pode ter acesso a memória suficiente. Essa exibição complementa as informações da memória obtidas em sys.dm_os_memory_clerks para dar um panorama completo do status da memória do servidor. sys.dm_exec_query_resource_semaphores retorna uma linha para o sinal do recurso normal e outra para o sinal do 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.
Observação
Este ID é exclusivo em versões do SQL Server anteriores ao SQL Server 2008. Essa alteração pode afetar a execução de consulta de solução de problemas. Para obter mais informações, consulte "Comentários", posteriormente neste tópico.
|
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 freqüê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 20 pools. No SQL Server 2008, cada pool se comporta como uma instância de servidor independente pequena e requer dois sinais. O número de linhas retornadas de sys.dm_exec_query_resource_semaphores pode ser até 20 vezes mais do que o retornado no SQL Server 2005.