Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Находиться-ли сервер под memory pressure  [new]
stenford
Member

Откуда: урал
Сообщений: 2852
Имеется сервер, работающий довольно медленно, было подозрение на оперативную память т.к. север крутиться на виртуальной машине, а на физическом сервере таких виртуальных машин несколько.

Получил следующую диагностику:

RMNotification IndicatorProcess IndicatorSystem CommitedMemory SharedMemory MemoryUtilization TotalPhysicalMemory AvailablePhysicalMemory TotalPageFile AvailablePageFile
RESOURCE_MEMPHYSICAL_HIGH 0 1 28779824 0 100 31456824 253528 62911784 31701084 8589934464
RESOURCE_MEM_STEADY 0 0 28779056 0 100 31456824 68000 62911784 31535936 8589934464
RESOURCE_MEMPHYSICAL_LOW 0 2 28817928 0 100 31456824 47228 62911784 31542068 8589934464
RESOURCE_MEMPHYSICAL_HIGH 0 1 28817928 0 100 31456824 196952 62911784 31641224 8589934464
RESOURCE_MEM_STEADY 0 0 28817928 0 100 31456824 74772 62911784 31504400 8589934464
RESOURCE_MEMPHYSICAL_LOW 0 2 28849128 0 100 31456824 38572 62911784 31463244 8589934464
RESOURCE_MEMPHYSICAL_HIGH 0 1 183984 0 100 31456824 29502216 62911784 60690736 8589934464



Page life expectancy = 6138
Lazy writes sec = 643
Page reads sec = 3909674
Page writes sec = 25807077
Target Server Memory (KB) = 28686304
Total Server Memory (KB) = 28686304


Можно-ли по ней сказать что есть проблемы с оперативной памятью на сервере?
Показана память в 30Гб, но это общая память на физический сервер, сколько там досталось виртуальной машине на которой находиться sql server непонятно.
30 июн 14, 11:04    [16237253]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9155
Вы не туда копаете, ищите счетчик ошибок страниц памяти в секунду. Это счетчик операционной системы.
30 июн 14, 11:07    [16237272]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
stenford,

В логе скуля посмотрите нет ли строк с memory pressure. Как правило, это говорит о нехватке памяти.
У вас не настроено Maximum server memory: https://www.sql.ru/forum/1080907/maximum-server-memory
Сколько RAM на сервере: SELECT physical_memory_in_bytes FROM sys.dm_os_sys_info
30 июн 14, 13:17    [16238213]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
Владислав Колосов
Вы не туда копаете, ищите счетчик ошибок страниц памяти в секунду. Это счетчик операционной системы.
Мне всегда было интересно, о чем этот счетчик и насколько он полезный. Потому что судя по описанию он показывает hard faults и soft faults вместе.

автор
Shows the average number of pages faulted per second. It is measured in numbers of pages faulted; because only one page is faulted in each fault operation, this is also equal to the number of page fault operations. This counter includes both hard faults (those that require disk access) and soft faults (where the faulted page is found elsewhere in physical memory). Most processors can handle large numbers of soft faults without significant consequence. However, hard faults, which require disk access, can cause delays.
Если на него и смотреть, то ТОЛЬКО совсестно с другими счетчиками памяти и дисков и искать корреляции, да и все равно, по-моему мнению, это просто трата времени с отдачей близкой к нулю.

И тем более, какая связь этого счетчика с memory pressure? Будь то internal or external memory pressure.
30 июн 14, 21:21    [16240858]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
stenford
Получил следующую диагностику:
Еще бы желательно дату и время знать когда это произошло, потому что непонятно как вы это потом анализируете.

NickAlex66
stenford,

В логе скуля посмотрите нет ли строк с memory pressure.
В том что автор привел и так уже говорится о physical external memory pressure.

NickAlex66
У вас не настроено Maximum server memory
+1
ну или VM balloon driver отъедает пямять периодически.
30 июн 14, 21:28    [16240872]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
stenford
Member

Откуда: урал
Сообщений: 2852
ок, поставил 26Гб максимальную память, при общей памяти 30Гб на физическом сервере.

Mind
В том что автор привел и так уже говорится о physical external memory pressure.

А какие именно счетчики это здесь показывают? Я правильно понимаю что это AvailablePhysicalMemory? Его данные колебляться между 40Мб и 295Мб, имено это и указывает на нехватку физической пямяти?
1 июл 14, 05:22    [16241503]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
stenford,

У вас на виртуальный сервер со скулем сколько RAM отдано?
1 июл 14, 07:32    [16241571]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
stenford
Member

Откуда: урал
Сообщений: 2852
NickAlex66
У вас на виртуальный сервер со скулем сколько RAM отдано?

не знаю, это сервер у клиента стоит, я к нему доступа не имею, максимум что могу их просить поменять какие-то настройки или запускать скрипты. Есть возмoжность как-нибудь определить это каким-нибудь скриптом?
1 июл 14, 07:43    [16241589]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
stenford
Member

Откуда: урал
Сообщений: 2852
команда DBCC MEMORYSTATUS выдала следующее:

Buffer Pool:
Committed 3328000
Target 3328000
Database 2867052
Dirty 41295
In IO 0
Latched 0
Free 455892
Stolen 5056
Reserved 0
Visible 3328000
Stolen Potential 3156544
Limiting Factor 17
Last OOM Factor 0
Last OS Error 0
Page Life Expectancy 32062


Process/Systems counts
Available Physical Memory 3077873664
Available Virtual Memory 8760030277632
Available Paging File 33507983360
Working Set 27660353536
Percent of Committed Memory in WS 98
Page Faults 78451034
System physical memory high 1
System physical memory low 0
Process physical memory low 0
Process virtual memory low 0


Вообще-то показано что проблем с оперативкой получается нету, непонятно что-то тогда, либо может нагрузка у них колеблется?
1 июл 14, 10:51    [16242209]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
stenford,

Сколько RAM на сервере: SELECT CAST(physical_memory_in_bytes/1024./1024./1024. AS decimal(15,2)) [RAM, GB] FROM sys.dm_os_sys_info - попросите выполнить этот скрипт.
И относительно полученной цифры выполняйте настройку Maximum server memory: https://www.sql.ru/forum/1080907/maximum-server-memory
1 июл 14, 11:49    [16242602]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9155
Mind,
автор
Мне всегда было интересно, о чем этот счетчик и насколько он полезный.


Насколько я находил информацию - этот счетчик может свидетельствовать о нехватке физической памяти, т.к. при запросах оперативки винда начинает сбрасывать плохие страницы в своп-файл. Якобы, если процесс обмена превышает 1000 страниц в секунду, то на глаз человек заметит падение производительности. По моим наблюдениям если 200-300 страниц в секунду - это уже заметно. Понемногу система и обязаны сбрасывать, но если идет потоком - это плохо.
1 июл 14, 14:21    [16243794]     Ответить | Цитировать Сообщить модератору
 Re: Находиться-ли сервер под memory pressure  [new]
Mind
Member

Откуда: Лучший город на Земле
Сообщений: 2322
stenford
ок, поставил 26Гб максимальную память, при общей памяти 30Гб на физическом сервере.

Mind
В том что автор привел и так уже говорится о physical external memory pressure.

А какие именно счетчики это здесь показывают? Я правильно понимаю что это AvailablePhysicalMemory? Его данные колебляться между 40Мб и 295Мб, имено это и указывает на нехватку физической пямяти?

Ну так RESOURCE_MEMPHYSICAL_LOW и говорит о том что системе недостаточно физической памяти. Насколько я понимаю это свидетельствует о том, что система затребовала у SQL Server'а память обратно, обычно это происходит если не выставить Maximum server memory. Сервер съедает всю доступную память отбирая у системы, через какое то время система может потребовать память назад, потом со временем и при необходимости сервер опять перетянет одеяло на себя и так до бесконечности.
Ну или с виртуальной машиной, более вероятный сценарий, это если памяти всем виртуалкам выделенно больше чем физически есть у хоста, то периодически хост будет отбирать память у VM помощью VM balloon driver. Там есть какая то настройка чтобы отключить balloon driver, но к я сожалению не силен в этом вопросе, поищите в гугле.
2 июл 14, 00:25    [16246363]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить