Galera,
No vídeo de hoje quero discutir com vocês sobre uma situação relacionada a pressão de memória ocorrida em um dos clientes que atendo e como resolvi o problema utilizando o Extended Events.
Caso tenha interesse em reproduzir o cenário descrito no vídeo, basta utiliza o script abaixo:
[code language=”sql”]
–LPIM => ‘Lock Pages In Memory’
–Analisando utilização de memória com o XEvents
–A significant part of SQL Server process memory has been paged out.
–This may result in performance degradation.This may result in a performance degradation.
–Duration: 0 seconds. Working set (KB): 2007640, committed (KB): 4594040, memory utilization: 43%.
/*
Working SET => Memória alocada pelo processo diretamente na memória RAM
Committed => Total de memória alocada pelo processo (RAM ou Page file)
Working Set trimming=> Windows está movendo bytes alocados na memória RAM para o Page File por causa de pressão de memória.
*/
–Memória utilizada pelo processo do SQL Server
SELECT
DATEADD (ms, a.[Record Time] – sys.ms_ticks, GETDATE()) AS Notification_time, a.*
FROM
(SELECT
x.value(‘(//Record/SchedulerMonitorEvent/SystemHealth/PageFaults) [1]’, ‘bigint’) AS [PageFaults],
x.value(‘(//Record/SchedulerMonitorEvent/SystemHealth/MemoryUtilization) [1]’, ‘bigint’) AS [MemoryUtilization (%workingset)],
x.value(‘(//Record/@time)[1]’, ‘bigint’) AS [Record Time]
FROM
(SELECT
CAST (record as xml)
FROM
sys.dm_os_ring_buffers
WHERE
ring_buffer_type = ‘RING_BUFFER_SCHEDULER_MONITOR’) AS R(x)) a
CROSS JOIN
sys.dm_os_sys_info sys
ORDER BY
DATEADD (ms, a.[Record Time] – sys.ms_ticks, GETDATE())
[/code]
Espero que gostem e não deixem de inscrever-se no blog, no canal do youtube e no grupo de discussão SQLManiacs.
Grande abraço a todos.
Pingback: Highway to Hell – Extended Events – A significant part of SQL Server process memory has been paged out | DBA4All
Pingback: Highway to Hell – Extended Events – A significant part of SQL Server process memory has been paged out – DBA Brasil