Семь наиболее полезных счётчиков эффективности

Статья посвящена вопросам мониторинга семи основных счётчиков эффективности работы MS SQL Server.

При установке SQL Server в Performance Monitor добавляются его специфические счетчики эффективности. Вы можете использовать их вместе с привычными счетчиками Win2K или NT, чтобы отслеживать производительность системы при изменении нагрузки. Чтобы устанавливать точку отсчёта, начинайте контроль счётчиков, когда система не испытывает пиковых нагрузок. Представленные в этой статье семь наиболее важных счетчиков помогут Вам быстро оценить производительность вашей системы с SQL Server и получить общее представление о её состоянии.

Bytes Total/sec

Счетчик Bytes Total/sec, который находится среди объектов Network Interface, может помочь Вам определить, является ли сетевой адаптер узким местом. Сравните значение этого счётчика с максимальной пропускной способностью вашей сетевой платы. Вообще, этот счётчик должен показать не более 50% утилизации пропускной способности сетевого адаптера.

Total Server Memory

Этот счетчик, расположенный среди объектов SQL Server: Memory Manager, показывает общую сумму динамически выделяемой памяти в килобайтах. Необходимо увеличить размер памяти, если среднее значение этого счётчика постоянно выше, чем доступное количество физической памяти в системе. (Замечание автора перевода: эта рекомендация не относится к тем случаям, когда для SQL Server установлен максимальный, фиксированный размер занимаемой им оперативной памяти).

Average Disk Queue Length

Этот счетчик показывает эффективность дисковой подсистемы и расположен среди объектов PhysicalDisk. Средняя длина очереди диска - это среднее общее количество запросов на чтение и на запись, которые были поставлены в очередь для соответствующего диска в течение интервала измерения. Согласно рекомендациям Microsoft, среднее число запросов ожидающих I/O не должно быть больше, чем в 1,5 - 2 раза числа шпинделей физических дисков. (Замечание автора перевода: по-видимому, автор статьи имеет ввиду значение с учётом масштаба по умолчанию для этого счётчика, т.к. на графике представляются умноженные на 100 значения). Если значения этого счётчика постоянно выше рекомендованных, Вы можете поднять производительность дисковой подсистемы установим более быстрые диски или увеличив их количество.

Cache Hit Ratio

Этот счетчик среди объектов SQL Server: Cache Manager показывает, может ли SQL Server размещать полностью планы исполнения запросов в кэше процедур. В идеале, это значение должно всегда быть выше 85 процентов. Если Вы наблюдаете снижение среднего значения этого счётчика, рассмотрите возможность добавление ОЗУ или оптимизации ваших запросов.

Buffer Cache Hit Ratio

Счетчик Buffer Cache Hit Ratio среди объектов SQL Server: Buffer Manager показывает, насколько полно SQL Server может разместить данные в буфере кэша. Чем выше это значение, тем лучше, т.к. для эффективного обращения SQL сервера к страницам данных, они должны находиться в буфере кэша, и операции физического ввода-вывода (I/O) должны отсутствовать. Если Вы наблюдаете устойчивое снижение среднего значения этого счётчика, рассмотрите возможность добавление ОЗУ.

Pages/Sec

Счетчик Pages/Sec, расположенный среди объектов Memory, показывает число страниц, которые SQL Server считал с диска или записал на диск для того, чтобы разрешить обращения к страницам памяти, которые не были загружены в оперативную память в момент обращения. Эта величина является суммой величин Pages Input/sec и Pages Output/sec, а также учитывает страничный обмен (подкачку/свопинг) системной кэш-памяти для доступа к файлам данных приложений. Кроме того, сюда включается подкачка не кэшированных файлов, непосредственно отображаемых в память. Это основной счетчик, за которым следует следить в том случае, если наблюдается большая нагрузка на использование памяти и связанный с этим избыточный страничный обмен. Этот счётчик характеризует величину свопинга и его нормальное (не пиковое) значение должно быть близко к нолю. Увеличение свопинга говорит о необходимости наращивания ОЗУ или уменьшения числа исполняемых на сервере прикладных программ.

% Processor Time

Один из наиболее жизненно-важных счетчиков, который необходимо контролировать, это счетчик % Processor Time среди объектов Processor. Этот счетчик показывает процентное отношение времени, которое процессор был занят выполнением операций для не простаивающих потоков (non-Idle thread). Эту величину можно рассматривать как долю времени, приходящегося на выполнение полезной работы. Каждый процессор может быть назначен простаивающему потоку, который потребляет непродуктивные циклы процессора, не используемые другими потоками. Для этого счётчика характерны непродолжительные пики, которые могут достигать 100 процентов. Однако, если Вы видите продолжительные периоды, когда утилизация процессора выше 80 процентов, ваша система будет более эффективной при использовании большего числа процессоров.