powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Значение PLE
25 сообщений из 28, страница 1 из 2
Значение PLE
    #39686648
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем привет.

Исходные данные сервера:

MS SQL 2016 Std
ОЗУ 48 Гб
6 x SSD 480 Гб RAID 10

Базы:

1. 500 Гб
2. 50 Гб
3. 2 Гб

Проблема собственно в том, что менее чем за сутки SQL "съедает" всю память.

Начал читать интернеты и нашел статью http://www.sqlservercentral.com/articles/Performance Tuning/analyzingmemoryrequirementsforsqlserver/2498/ в частности там говорится о PLE. Начал читать разные источники по PLE, а там упоминается, что среднее значение должно быть не менее 300. У меня же такие значения:

Код: sql
1.
SELECT * FROM sysperfinfo WHERE counter_name LIKE 'Page life expectancy%'



Получается, что у меня страницы в буфере хранятся 20360 сек! По-моему это не просто много, а офигеть как много, поэтому вся память съедается.

Прошу вас прокомментировать мою ситуацию. Спасибо.
...
Рейтинг: 0 / 0
Значение PLE
    #39686650
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafПроблема собственно в том, что менее чем за сутки SQL "съедает" всю память.

Тебе нафига свободная память на сервере?
...
Рейтинг: 0 / 0
Значение PLE
    #39686651
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
aleks222maxrafПроблема собственно в том, что менее чем за сутки SQL "съедает" всю память.

Тебе нафига свободная память на сервере?

Я тоже об этом задумался, когда прочитал о том, что он забирает всю память для кэширования всего чего можно. Но в таком случае как понять, что все нормально? Опрашивать сотрудников?
...
Рейтинг: 0 / 0
Значение PLE
    #39686677
Фотография Щукина Анна
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxraf,

Разве ваши значения меньше, указанного в источнике лимита? ;)

В целом, если и судить об эффективности использования памяти, то правильнее, IMHO, будет ориентироваться на понятие "hit ratio" для кэшей - страничного (buffer) и библиотечного (plan).

Кроме того, недостаток памяти - это не единственное, что может вызвать проблемы производительности.

В целом, плясать нужно - "от печки", а вам - от решаемой задачи. Вы циферки абстракто меряете, исключительно в целях получения их абсолютных значений? Или есть какие-то проблемы в работе сервера, которые вы пытаетесь устранить?
...
Рейтинг: 0 / 0
Значение PLE
    #39686679
архивариус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafПроблема собственно в том, что менее чем за сутки SQL "съедает" всю память.

он съедает сколько ему выделили, выдели меньше (только зачем?)
...
Рейтинг: 0 / 0
Значение PLE
    #39686729
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
архивариус,

дык рабочий стол только 200-300 мб съедает. Пять столов - вот и гиг памяти. Плюс какой-то софт по расписанию должен работать, обновления ставятся. Чтобы локтями не толкаться.
...
Рейтинг: 0 / 0
Значение PLE
    #39686745
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafПолучается, что у меня страницы в буфере хранятся 20360 сек! По-моему это не просто много, а офигеть как много, поэтому вся память съедается.

Прошу вас прокомментировать мою ситуацию. Спасибо.

Во-первых, этот счетчик имеет актуальность на момент просмотра, т.е. изменится в следующую секунду
Вывод: надо смотреть на тренд

Во-вторых, если вы заставите его очищать кэш данных, то пришедшие запросы встанут в очередь ожидания пока сиквел будет дергать диски и поднимать данные в память.
Вывод: вы "тормознете" сервер и клиентов ради "экономии" памяти.

покажите результат
Код: sql
1.
2.
3.
4.
5.
6.
select * from sys.configurations where name like '%server memory%'
go
select * from sys.dm_os_performance_counters where counter_name like 't%server memory%'
go
select * from sys.dm_os_sys_memory
go
...
Рейтинг: 0 / 0
Значение PLE
    #39687286
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Запустил счетчики производительности в течение рабочего дня.

Вот такие результаты (нагрузки в пике):

Гигабитный интерфейс 746 Мб/с

Сам SQL 42,4 Гб из выделенных 46.

Процессор 22,8%

По дисковой подсистеме не могу. График показывает в один момент пик был более 90%, а в цифрах максимум 18,635 - это что за показатель? Приложил скриншот.

В целом, что скажете по производительности?
...
Рейтинг: 0 / 0
Значение PLE
    #39687288
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komradmaxrafПолучается, что у меня страницы в буфере хранятся 20360 сек! По-моему это не просто много, а офигеть как много, поэтому вся память съедается.

Прошу вас прокомментировать мою ситуацию. Спасибо.

Во-первых, этот счетчик имеет актуальность на момент просмотра, т.е. изменится в следующую секунду
Вывод: надо смотреть на тренд

Во-вторых, если вы заставите его очищать кэш данных, то пришедшие запросы встанут в очередь ожидания пока сиквел будет дергать диски и поднимать данные в память.
Вывод: вы "тормознете" сервер и клиентов ради "экономии" памяти.

покажите результат
Код: sql
1.
2.
3.
4.
5.
6.
select * from sys.configurations where name like '%server memory%'
go
select * from sys.dm_os_performance_counters where counter_name like 't%server memory%'
go
select * from sys.dm_os_sys_memory
go
...
Рейтинг: 0 / 0
Значение PLE
    #39687291
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Щукина Аннаmaxraf,

Разве ваши значения меньше, указанного в источнике лимита? ;)

В целом, если и судить об эффективности использования памяти, то правильнее, IMHO, будет ориентироваться на понятие "hit ratio" для кэшей - страничного (buffer) и библиотечного (plan).

Кроме того, недостаток памяти - это не единственное, что может вызвать проблемы производительности.

В целом, плясать нужно - "от печки", а вам - от решаемой задачи. Вы циферки абстракто меряете, исключительно в целях получения их абсолютных значений? Или есть какие-то проблемы в работе сервера, которые вы пытаетесь устранить?

В целом проблем нет, по крайней мере никто не жалуется. Но для своего спокойствия и спокойствия компании хочу убедиться, что все в порядке.
...
Рейтинг: 0 / 0
Значение PLE
    #39687300
Фотография alexeyvg
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafВ целом проблем нет, по крайней мере никто не жалуется. Но для своего спокойствия и спокойствия компании хочу убедиться, что все в порядке.Если нет интенсивного IO с файлом подкачки, то ничего делать не надо. Посмотреть это можно в ресурс-мониторе.

Если есть, то нужно ограничить доступную память для сиквела так, что бы оставить её для других приложений. А сиквел уже сам определит, какие (редко используемые) данные можно удалить из кэша.
...
Рейтинг: 0 / 0
Значение PLE
    #39687345
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxraf,

ну, в зависимости от того, как долго работает сиквел (дата создания tempdb, к примеру), памяти ему достаточно и он её не до упора взял (46ГБ на кэш данных)

кстати, у вас всего 1.3ГБ свободно - могут быть проблемы со свободной памятью на хосте и, в случае отсутствия права lock pages in memory , винда может скидывать память сиквела в файл подкачки

на сервере кроме сиквела еще что-нибудь работает? например, ssis, ssrs, ssas или какая-нибудь отдельная софтинка?
...
Рейтинг: 0 / 0
Значение PLE
    #39687384
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxraf,

если я правильно помню рекомендации, то среднее значение дисковой очереди не должно превышать 2. На графике видны постоянные пики пропускной способности. Косвенно это говорит о недостаточном объеме буферной памяти для текущих процессов. На "хорошем" графике "просадки" обычно коррелируют с работой механизма отложенной записи Lazy Writer, сохранению контрольных точек при создании резервных копий и тому подобное.
...
Рейтинг: 0 / 0
Значение PLE
    #39687389
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов На графике видны постоянные пики пропускной способности.
на его графике показано среднее от общего
имеет смысл смотреть по дискам сиквела, а не вообще по всему что есть
...
Рейтинг: 0 / 0
Значение PLE
    #39687395
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосов,

мне кажется, что "не должно превышать 2 " это фантастика ну или никто не работает :)
А так выяснять болен ли пациент, если он ни на что не жалуется это потерянное время. Лучше бекапами займитесь
...
Рейтинг: 0 / 0
Значение PLE
    #39687406
Владислав Колосов
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TaPaK,

да вот не знаю как, но у нас очередь меньше единицы в среднем. Хотя несколько сотен пользователей плюс веб-сервисы. Прыгает изредка до 40, но при массовых расчётах.
...
Рейтинг: 0 / 0
Значение PLE
    #39687413
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав КолосовTaPaK,

да вот не знаю как, но у нас очередь меньше единицы в среднем. Хотя несколько сотен пользователей плюс веб-сервисы. Прыгает изредка до 40, но при массовых расчётах.
Тут не суть того что вот "выше 2х значить плохо". У меня только "массовые расчёты", остальную нагрузку я не учитываю, и "два" это вообще не вариант(наверняка обороджуванием можно сильно приблизить к этому) :)
...
Рейтинг: 0 / 0
Значение PLE
    #39687476
архивариус
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Владислав Колосовmaxraf,если я правильно помню рекомендации, то среднее значение дисковой очереди не должно превышать 2. imho, это в расчете на шпиндель HDD, если в RAID N дисков = 2*N, для SSD неактуально
...
Рейтинг: 0 / 0
Значение PLE
    #39687801
maxraf
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
komradmaxraf,

ну, в зависимости от того, как долго работает сиквел (дата создания tempdb, к примеру), памяти ему достаточно и он её не до упора взял (46ГБ на кэш данных)

кстати, у вас всего 1.3ГБ свободно - могут быть проблемы со свободной памятью на хосте и, в случае отсутствия права lock pages in memory , винда может скидывать память сиквела в файл подкачки

на сервере кроме сиквела еще что-нибудь работает? например, ssis, ssrs, ssas или какая-нибудь отдельная софтинка?

Из стороннего софта rphost и Касперский, больше ничего.
...
Рейтинг: 0 / 0
Значение PLE
    #39687813
aleks222
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafИз стороннего софта rphost и Касперский, больше ничего.

Расходимся господа.
Медицина тут бессильна.
...
Рейтинг: 0 / 0
Значение PLE
    #39687854
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У Гладченко была отличная статья, кто-то ее про#$@л.
Ладно хоть скрипт остался... может в чем-то поможет.

Быстрый тест проблем с памятью
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
-- Быстрый тест проблем с памятью
-- По мотивам: http://bit.ly/LkT05M
WITH RingBufferXML
AS(SELECT CAST(Record AS XML) AS RBR FROM sys .dm_os_ring_buffers
   WHERE ring_buffer_type = 'RING_BUFFER_RESOURCE_MONITOR'
  )
SELECT DISTINCT 'Зафиксированы проблемы' =
          CASE
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]','tinyint')  = 0 AND
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]','tinyint')   = 2 
                    THEN 'Недостаточно физической памяти для системы'
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]','tinyint')  = 0 AND 
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]','tinyint')   = 4 
                    THEN 'Недостаточно виртуальной памяти для системы' 
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]', 'tinyint') = 2 AND 
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]','tinyint')   = 0 
                    THEN'Недостаточно физической памяти для запросов'
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]', 'tinyint') = 4 AND 
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]', 'tinyint')  = 4
                    THEN 'Недостаточно виртуальной памяти для запросов и системы'
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]','tinyint')  = 2 AND 
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]','tinyint')   = 4 
                    THEN 'Недостаточно виртуальной памяти для системы и физической для запросов'
                    WHEN XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]', 'tinyint') = 2 AND 
                         XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]', 'tinyint')  = 2 
                    THEN 'Недостаточно физической памяти для системы и запросов'
         END
FROM        RingBufferXML
CROSS APPLY RingBufferXML.RBR.nodes ('Record') Record (XMLRecord)
WHERE       XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]','tinyint') IN (0,2,4) AND
            XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]' ,'tinyint') IN (0,2,4) AND
            XMLRecord.value('(ResourceMonitor/IndicatorsProcess)[1]','tinyint') +
            XMLRecord.value('(ResourceMonitor/IndicatorsSystem)[1]' ,'tinyint') > 0

...
Рейтинг: 0 / 0
Значение PLE
    #39687855
ShIgor
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgor,

а.. вот нашлась

на технете ссылки битые
...
Рейтинг: 0 / 0
Значение PLE
    #39687906
Фотография komrad
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maxrafkomradmaxraf,

ну, в зависимости от того, как долго работает сиквел (дата создания tempdb, к примеру), памяти ему достаточно и он её не до упора взял (46ГБ на кэш данных)

кстати, у вас всего 1.3ГБ свободно - могут быть проблемы со свободной памятью на хосте и, в случае отсутствия права lock pages in memory , винда может скидывать память сиквела в файл подкачки

на сервере кроме сиквела еще что-нибудь работает? например, ssis, ssrs, ssas или какая-нибудь отдельная софтинка?

Из стороннего софта rphost и Касперский, больше ничего.

другими словами - "только 1С и антивирус"
у вас на одной лошади три наездника - она конечно пойдет, но требовать/ожидать от нее производительности не стоит

погуглил, что такое rphost - одна из первых ссылок :
https://flumi.ru/articles/show/rphost_zanimaiet_pamiat_i_ghruzit_protsiessor
...
Рейтинг: 0 / 0
Значение PLE
    #39687916
TaPaK
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
обсуждение не о чём. Sql заберёт столько памяти сколько ему разрешили, доступна вся - всю и заберёт. И ещё и нихрена не отдаст просто так.
...
Рейтинг: 0 / 0
Значение PLE
    #39688009
Фотография StarikNavy
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ShIgorЛадно хоть скрипт остался... может в чем-то поможет.
"Недостаточно физической памяти для запросов"
это он про оперативку, или про место на хардах?
...
Рейтинг: 0 / 0
25 сообщений из 28, страница 1 из 2
Форумы / Microsoft SQL Server [игнор отключен] [закрыт для гостей] / Значение PLE
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]