Я пытаюсь настроить SQL Server. За Видео настройки выступления Брента Озара, он говорит, что файл подкачки PerfMon:% Usage должен быть нулевым или смехотворно близким к нему. Средний показатель на моем ящике составляет около 1,341%.
В коробке 18 ГБ ОЗУ, SQL Server выключен, общая сумма оплаты за фиксацию составляет 1 ГБ, но показатель PerfMon не равен 0. Производительность диспетчера задач показывает, что использование PF составляет 1,23 ГБ.
Что делать, чтобы лучше настроить коробку?
Тебе действительно стоит настроиться на ПРОИЗВОДИТЕЛЬНОСТЬ, а не для магических чисел.
Нулевое использование файла подкачки (свопа) - хорошая цель, если вы можете ее достичь, но если у вас достаточно ОЗУ для всех нужд SQL-сервера и вы не испытываете проблем с производительностью, вам, вероятно, не нужно ничего «настраивать». Наличие некоторых данных в файле подкачки, которые никогда не будут запрашиваться, не снижает производительности.
Если вы хотите сосредоточиться на цифрах, я бы сосредоточился больше на Memory\Available Bytes
(убедитесь, что всегда доступно здоровое количество, где «здоровый» определяется вашим вариантом использования) и Memory\Pages/sec
(который должен быть равен нулю или близок к нему, что указывает на то, что то, что находится в свопе, не вызывается активно в ОЗУ).
Помните, что современные операционные системы часто вытесняют данные, которые никогда не запрашивались, из ОЗУ, предварительно помещая их в файл подкачки (пространство подкачки), пока система простаивает, чтобы было доступно больше ОЗУ, и системе не приходилось использовать снижение производительности перетасовки материала на диск, если ему нужна эта оперативная память, когда она на самом деле занятый.
В качестве примера рассмотрим эту статистику с одного из моих (unix) серверов БД:
CPU: 0.0% user, 0.0% nice, 0.0% system, 0.0% interrupt, 100% idle
Mem: 710M Active, 730M Inact, 554M Wired, 72M Cache, 315M Buf, 862M Free
Swap: 2048M Total, 910M Used, 1138M Free, 44% Inuse
Поэтому в настоящее время я не предпринимаю никаких действий по настройке (хотя я убиваю и перезапускаю программу с утечкой памяти, когда использование подкачки достигает 50%).
Диспетчер задач неправильный. Фактически он отображает общую сумму фиксации системы. (Формулировка была изменена на сервере 2008 года, чтобы отразить это.)
Что касается использования файла подкачки 1,341%, мне это кажется смехотворно близким к нулю, но я не администратор базы данных. Для Windows «нормально» выполнять подкачку страниц, даже если у нее много доступной памяти - если это то, что вы хотите исправить, возможно, вам стоит подумать о запросе указателей на сайте / форуме, ориентированном на администраторов баз данных. Похоже, проблема обсуждается на dba.stackexchange.com и sqlservercentral.com
Я мог бы порекомендовать сначала провести сравнительный анализ, чтобы увидеть, действительно ли эти 1,3% влияют на производительность вашего сервера, прежде чем приложить массу усилий для их устранения. Я был бы удивлен, если бы это принесло заметную разницу - я бы подумал, что ваши усилия по настройке производительности, вероятно, лучше потратить в другом месте, но, как я уже сказал, я не администратор баз данных, поэтому могу ошибаться.