(495) 925-0049, ITShop интернет-магазин 229-0436, Учебный Центр 925-0049
  Главная страница Карта сайта Контакты
Поиск
Вход
Регистрация
Рассылки сайта
 
 
 
 
 

Счётчики производительности, позволяющие идентифицировать узкие места дисковой подсистемы SQL Server

Alexander Gladchenko

Описание проблемы

Известны несколько статей об обнаружении проблем ввода-вывода, связанных с SQL Server. Существуют разные методы поиска "узких мест" ввода-вывода, мы же сконцентрируемся тут на вопросе: Какие счётчики производительности необходимы для того, чтобы быстро понять, являются ли диски "узким местом"?

Решение

В сети можно найти много разной информации о том, как определить возможные узкие места ввода-вывода. Доступная информация настолько обширна, что в ней легко потеряться. Быстро определить является ли узким местом дисковая подсистема достаточно трудная задача, решение которой главным образом зависит от типа хранилища, которое может быть: DAS, SAN, NAS, iSCISI, виртуальный диск и т.п. В большинстве организаций диски доступные для SQL Server - это "чёрный ящик", что делает задачу определения реального размещения данных достаточно тяжёлой.
Во время конференции PASS Summit 2010 года на встрече SQL Clinic автор общался с экспертами в области анализа загрузки дисков на тему того, как быстро идентифицировать возможные проблемы с дисками. В конце беседы Premier Field Engineer представил очень простой, но эффективный набор счётчиков производительности для такого анализа.
Основная идея сводится к тому, чтобы использовать такие счётчики производительности, которые не нуждаются в дополнительной информации, требующей интерпретации. Есть несколько подходящих счётчиков, но только некоторые из них позволяют измерить абсолютные величины в том смысле, что они не нуждаются в дополнительных измерениях показаний других счётчиков или интерпретации полученной информации.
Таким образом, можно выделить два основных счётчика, которые можно использовать для того, чтобы быстро проанализировать работу дисков:

Avg. Disk sec/Read - показывает среднее время в секундах, потраченное на чтение данных с диска.
Avg. Disk sec/Write - показывает среднее время в секундах, потраченное на запись данных на диск.

 
Эти два счётчика измеряют время ожидания непосредственно в той программной надстройке, где диски устройства хранения данных становятся доступны операционной системе. Они позволяют точно измерить, сколько времени диски и аппаратное окружение потратили на обслуживание запросов ввода-вывода независимо от того, какие были задействованы аппаратные средства.
Используя эти счётчики при исследовании загрузки нескольких дисков, можно выяснить то, как обстоят дела с каждым отдельным диском, таким образом, можно понять, является ли узким местом какой-либо из исследуемых дисков.
Подобно правилу буравчика, если мы имеем дело с OLTP системой, среднее значение должно быть меньше 15 ms со всплесками до 25 ms. Если у вас эти значения ниже указанного порога, тогда ваш ввод-вывод не испытывает затруднений, и никакой дополнительный анализ узких мест дисков больше не потребуется. Это эмпирическое правило может использоваться для любого типа системы. Чем меньше времени требуется для чтения или записи данных, тем быстрее будет ваша система.
Картинка ниже показывает Avg. Disk sec/Read для диска C:. Можно видеть, что среднее значение порядка 0.130, что составляет 130 ms, и максимальное значение 1.089, что составляет 1089 ms. Таким образом, у исследуемой системы ввод-вывод является узким местом, что видно из полученных значений счётчиков. Если бы интерпретировалось значение Avg. Disk sec/Write, оно привело бы к аналогичным выводам.
 
 

Если значения представленных выше счётчиков превышают указанные оптимальные пороговые значения, придётся заняться более глубоким анализом, измерив для этого данные следующих счётчиков производительности:

Disk Transfers/sec - демонстрирует нагрузку операций чтения и записи на диск.
Disk Reads/sec - нагрузка операций чтения с диска.
Disk Writes/sec - нагрузка операций записи на диск.
Avg. Disk Queue Length - показывает среднее значение числа запросов чтения и записи, которые стояли в очереди к выбранному диску во время интервала измерений.
Current Disk Queue Length - показывает число запросов, адресованных выбранному диску в то время, когда непосредственно выполнялись измерения.

Заключение

Целью этой статьи была рекомендация счётчиков производительности, которые годятся для экспресс-анализа того, является ли дисковая подсистема узким местом в работе компьютера. Если вы наблюдаете превышающие пороговые значения этих счётчиков, понадобится потратить дополнительное время на то, чтобы "раскопать" источник проблемы.

По материалам статьи Маттео Лорини (Matteo Lorini): "Perfmon Counters to Identify SQL Server Disk Bottlenecks".

Ссылки по теме


 Распечатать »
 Правила публикации »
  Написать редактору 
 Рекомендовать » Дата публикации: 25.10.2011 
 

Магазин программного обеспечения   WWW.ITSHOP.RU
Microsoft 365 Apps for business (corporate)
Microsoft 365 Business Standard (corporate)
Microsoft Office для дома и учебы 2019 (лицензия ESD)
Microsoft Windows Professional 10, Электронный ключ
Microsoft 365 Business Basic (corporate)
 
Другие предложения...
 
Курсы обучения   WWW.ITSHOP.RU
 
Другие предложения...
 
Магазин сертификационных экзаменов   WWW.ITSHOP.RU
 
Другие предложения...
 
3D Принтеры | 3D Печать   WWW.ITSHOP.RU
 
Другие предложения...
 
Новости по теме
 
Рассылки Subscribe.ru
Информационные технологии: CASE, RAD, ERP, OLAP
Безопасность компьютерных сетей и защита информации
Новости ITShop.ru - ПО, книги, документация, курсы обучения
Программирование на Microsoft Access
CASE-технологии
Компьютерные книги. Рецензии и отзывы
eManual - электронные книги и техническая документация
 
Статьи по теме
 
Новинки каталога Download
 
Исходники
 
Документация
 
 



    
rambler's top100 Rambler's Top100