Eu recebi essa consulta em uma postagem no blog :
SELECT object_name, counter_name, cntr_value
FROM sys.dm_os_performance_counters
WHERE [object_name] LIKE '%Buffer Manager%'
AND [counter_name] = 'Buffer cache hit ratio'
O post dizia que me daria uma porcentagem de acessos ao cache. Pareceu indicar que seria um valor de 0 a 100 (mostrou um resultado de 87).
Mas quando eu corro, estou recebendo números muito altos. Aqui está um exemplo:
object_name counter_name cntr_value
SQLServer:Buffer Manager Buffer cache hit ratio 9990
Isso significa 99,90%?
Se não, o que isso significa? E como posso obter o valor real?
NOTA: Obtive valores tão baixos quanto 257 e tão altos quanto 352363
Caso seja relevante, aqui estão algumas outras estatísticas do servidor:
- Esperança de vida da página: 145
- Leituras da página / s: 1.380.009.009
sql-server
performance
sql-server-2012
Vaccano
fonte
fonte
Respostas:
Confuso, certo?
Bem, para realmente obter a relação, você precisa fazê-lo sozinho usando o
Buffer cache hit ratio base
além doBuffer cache hit ratio
tomando o resultadoBuffer cache hit ratio / Buffer cache hit ratio base
.Experimente a consulta abaixo (de Menos de ponto ), que deve fornecer a% que você está procurando:
fonte
Se você não possui uma instância padrão do SQL server, mas nomeada instância, é necessário modificar a consulta como esta:
fonte