Лучший отвечающий
Значение IOPS слишком высокое

Вопрос
-
Добрый день. Появилась задача мониторить IOPS на диске сервера с Windows 2008R2. В интернете нашел несколько статей, в которых сказано что можно это сделать с помощью счетчиков производительности:
Disk Reads/sec - операций чтения в секунду
Disk Writes/sec - операций записи в секунду
Disk Transfers/sec - операций чтения и записи в секунду.
На сервер стоят 4 жестких доска в 10 рейде. За время мониторинга счетчики показали максимальные значения по чтению - более 3000 операций в секунду, по записи - более 1000 операций в секунду. Значения в несколько раз превышают количество iops которые смогли бы дать эти диски.
Где я ошибся? И как правильно мне снять значение iops?
3 мая 2013 г. 6:54
Ответы
-
а кеширование разве не будет влиять на эти пиковые значения?
- Предложено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 8 мая 2013 г. 7:16
- Помечено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 13 мая 2013 г. 8:05
3 мая 2013 г. 11:48Модератор -
Дмитрий. Сейчас ничего не подсаживает. При каких событиях максимальные значения выскакивают мне ясно. Дело в том, что значение которое возвращает счетчик ни как не может быть iops. Наша дисковая система ни как не может выдавать 3000 iops на чтение и 1000 на запись. Я думаю, что даже эти значения не максимальные и мы не упираемся в максимальную производительность дисков. Мне просто нужно получить реальное значение iops вот и все.
Может - если операции с диском - последовательные, да еще и включен кэш. В таком случае и чтение, и запись практически не требует ожидания позиционирования головок: при записи данные пишутся в кэш, которого всяко хватит на то, чтобы уместить одну дорожку (после чего, когда нужная часть дорожки окажется перед головкой, они сбрасываются на диск), а при чтении данные уже находятся в кэше, т.к. контроллер распознает последовательное чтение и выполняет операции с опережением. В результате скорость работа диска оказывается ограниченной линейной скоростью записи/чтения, что сооответсвует весьма большому числу IOPS (достаточно короткие - 4-8 КБ - блоки данных покажут IOPS до 10 тыс. на шпиндель), а не скоростью позиционирования, которую обычно и отражают типичные данные по IOPS - те, которые порядка 1 IOPS на 100 об/мин и на шпиндель. Собственно, разработчики СУБД и файловых систем стремятся именно к такому режиму работы, так что Ваш результат неудивителен.
Когда последовательные в основном операции перемежаются произвольными, IOPS будет иметь некое промежуточное значение.
Слава России!
- Изменено M.V.V. _ 3 мая 2013 г. 17:24
- Предложено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 8 мая 2013 г. 7:15
- Помечено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 13 мая 2013 г. 8:05
3 мая 2013 г. 17:19
Все ответы
-
Почитайте гайд. и краткое руководство
Запишите показания за большой временной период (например, несколько недель)
3 мая 2013 г. 7:19Отвечающий -
Почитайте гайд. и краткое руководство
Запишите показания за большой временной период (например, несколько недель)
Какраз в гайде и написано:
Добавление счетчиков в текущее представление системного монитора
-
В строке меню над экраном графика системного монитора нажмите кнопку Добавить (+) или щелкните правой кнопкой мыши любую точку графика и выберите пункт меню Добавить счетчики. Откроется диалоговое окно Добавить счетчики.
-
В разделе Доступные счетчики выберите счетчики для отображения на экране системного монитора. Для данного примера предлагаются перечисленные ниже счетчики.
- Память: % использования выделенной памяти
- Memory: Ошибок страницы/сек
- Физический диск: Скорость чтения с диска (байт/сек)
- Физический диск: Обращений чтения с диска/сек
- Физический диск: Скорость записи на диск (байт/сек)
- Физический диск: Обращений записи на диск/сек
- Процессор: Процент времени бездействия
- Процессор: Прерываний/сек
- Система: Счетчик потоков
-
Завершив выбор счетчиков, нажмите кнопку ОК
Дополнительные сведения см. в разделе Диалоговое окно "Добавить счетчики".
-----
Как раз счетчики "Физический диск: Обращений чтения с диска/сек" и "Физический диск: Обращений записи на диск/сек" зашкаливают.
3 мая 2013 г. 7:32 -
-
С тем, что они зашкаливают, я полностью согласен. Опишите, пожалуйста роли сервера. Это ВМ? Эти показатели все время в потолке, к машине постоянный доступ, или есть периоды "простоя" ?
Объем дисков и ваших данных приведите пожалуйста(можно округлить +- гигабайт)
3 мая 2013 г. 7:51Отвечающий -
С тем, что они зашкаливают, я полностью согласен. Опишите, пожалуйста роли сервера. Это ВМ? Эти показатели все время в потолке, к машине постоянный доступ, или есть периоды "простоя" ?
Объем дисков и ваших данных приведите пожалуйста(можно округлить +- гигабайт)
- Изменено Armen V. Khaishbashev 3 мая 2013 г. 7:59
3 мая 2013 г. 7:59 -
Так. Тогда на сервере д.б.
Cumulative Update 4 for SQL Server 2008 R2 SP2
и
ограничение максимальной памяти.
http://msdn.microsoft.com/ru-ru/library/ms180797(v=sql.105).aspx
3 мая 2013 г. 8:07Отвечающий -
Так. Тогда на сервере д.б.
Cumulative Update 4 for SQL Server 2008 R2 SP2
и
ограничение максимальной памяти.
http://msdn.microsoft.com/ru-ru/library/ms180797(v=sql.105).aspx
3 мая 2013 г. 8:13 -
А, лечить не будем.... ))
Ну тогда ставите счетчики, они жужжат (я беру обычно 21 день), мне достаточно вполне бывает. И срез графиков выгружаете в отчет для руководства с вашими комментариями- а вот в это время был вечерний бекап, а вот в это время выбивался отчет.
Первичку можно собирать уже с первой рабочей недели- 7 дней обычно дают 80 процентов картины, остаток пойдет вам для глазомера, работают ли ваши пользователи с сервисом, или пинают балду.
Читайте гайд внимательно, всех благ.
3 мая 2013 г. 8:21Отвечающий -
Кстати, обратите внимание на триггеры- их легко настроить на действие при алерте- отправка письма с показателем все пропало иногда очень ценна.3 мая 2013 г. 8:22Отвечающий
-
Дмитрий можно по конкретнее что лечить, о чем речь? Есть информация о каком-то баге, который влияет на показания счетчиков?
Гайд, что вы мне дали, по тюнингу производительности, я его конечно почитаю, но пока не пойму как он мне поможет если мне надо снять информацию о производительности.
Мне не понадобится составлять отчет для руководства. Мне это нужно, чтобы в случае низкой производительности я смог найти "узкое место".
3 мая 2013 г. 8:37 -
Конкретнее можно- я подумал вначале, что у вас пожар, а задача стоит только начать собирать данные о производительности. У вас все будет хорошо, немного возьмите времени и разберитесь. А обновления выше оч. советую установить.
3 мая 2013 г. 8:43Отвечающий -
Конкретнее можно- я подумал вначале, что у вас пожар, а задача стоит только начать собирать данные о производительности. У вас все будет хорошо, немного возьмите времени и разберитесь. А обновления выше оч. советую установить.
3 мая 2013 г. 8:52 -
Если Вы используете и файл-сервер, и SQL, и Web службы на этой машине, то нужно снять показатели со всех подсистем, и понять что просаживает сильнее всего, и понять, как оптимизировать сейчас и потом, выносить или нет сервисы и т.д. Именно поэтому я и дал гайд) Он не такой страшный, как кажется.3 мая 2013 г. 9:00Отвечающий
-
Если Вы используете и файл-сервер, и SQL, и Web службы на этой машине, то нужно снять показатели со всех подсистем, и понять что просаживает сильнее всего, и понять, как оптимизировать сейчас и потом, выносить или нет сервисы и т.д. Именно поэтому я и дал гайд) Он не такой страшный, как кажется.
Дмитрий. Сейчас ничего не подсаживает. При каких событиях максимальные значения выскакивают мне ясно. Дело в том, что значение которое возвращает счетчик ни как не может быть iops. Наша дисковая система ни как не может выдавать 3000 iops на чтение и 1000 на запись. Я думаю, что даже эти значения не максимальные и мы не упираемся в максимальную производительность дисков. Мне просто нужно получить реальное значение iops вот и все.- Изменено Armen V. Khaishbashev 3 мая 2013 г. 9:13
3 мая 2013 г. 9:11 -
а кеширование разве не будет влиять на эти пиковые значения?
- Предложено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 8 мая 2013 г. 7:16
- Помечено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 13 мая 2013 г. 8:05
3 мая 2013 г. 11:48Модератор -
а кеширование разве не будет влиять на эти пиковые значения?
3 мая 2013 г. 12:42 -
Дмитрий. Сейчас ничего не подсаживает. При каких событиях максимальные значения выскакивают мне ясно. Дело в том, что значение которое возвращает счетчик ни как не может быть iops. Наша дисковая система ни как не может выдавать 3000 iops на чтение и 1000 на запись. Я думаю, что даже эти значения не максимальные и мы не упираемся в максимальную производительность дисков. Мне просто нужно получить реальное значение iops вот и все.
Может - если операции с диском - последовательные, да еще и включен кэш. В таком случае и чтение, и запись практически не требует ожидания позиционирования головок: при записи данные пишутся в кэш, которого всяко хватит на то, чтобы уместить одну дорожку (после чего, когда нужная часть дорожки окажется перед головкой, они сбрасываются на диск), а при чтении данные уже находятся в кэше, т.к. контроллер распознает последовательное чтение и выполняет операции с опережением. В результате скорость работа диска оказывается ограниченной линейной скоростью записи/чтения, что сооответсвует весьма большому числу IOPS (достаточно короткие - 4-8 КБ - блоки данных покажут IOPS до 10 тыс. на шпиндель), а не скоростью позиционирования, которую обычно и отражают типичные данные по IOPS - те, которые порядка 1 IOPS на 100 об/мин и на шпиндель. Собственно, разработчики СУБД и файловых систем стремятся именно к такому режиму работы, так что Ваш результат неудивителен.
Когда последовательные в основном операции перемежаются произвольными, IOPS будет иметь некое промежуточное значение.
Слава России!
- Изменено M.V.V. _ 3 мая 2013 г. 17:24
- Предложено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 8 мая 2013 г. 7:15
- Помечено в качестве ответа Petko KrushevMicrosoft contingent staff, Moderator 13 мая 2013 г. 8:05
3 мая 2013 г. 17:19