Влияние фрагментации на производительность дисков

5 13

Очень часто слышу от администраторов, что у них система DIRECTUM стала медленной. И когда спрашиваю о дефрагментации дисков, где хранится БД DIRECTUM, ответ от 90% администраторов был: «нет, не делаю, а для чего это необходимо, если у меня файловая система NTFS?» Не соглашусь с этим высказыванием. Фрагментация файлов на дисках с файловой системой NTFS намного меньше, чем на дисках с файловой системой FAT32, но это не означает, что ее нет.

 А теперь, давай посмотрим влияние фрагментации файлов на производительность диска. Для этого записал несколько счетчиков производительности диска с фрагментацией за один день, после дефрагментации диска записал счетчики еще раз.

Название счетчика: Среднее время чтения с диска.

Описание счетчика: Среднее время чтения с диска - это время в секундах, затрачиваемое в среднем на одну операцию чтения данных с диска.

 

 

Минимальное значение

Максимальное значение

Среднее значение

стандартное отклонение

С фрагментацией

0

0,5

,023

,051

Без фрагментации

0

,26

,008

0,01

Название счетчика: Среднее время записи на диск.

Описание счетчика: Среднее время записи на диск - это время в секундах, затрачиваемое в среднем на одну операцию записи данных на диск.

 

 

Минимальное значение

Максимальное значение

Среднее значение

стандартное отклонение

С фрагментацией

0,001787

0,2654

0,007211

0,02334

Без фрагментации

0,001044

0,03868

0,004368

0,003191

 Название счетчика: Текущая длина очереди диска.

Описание счетчика: Текущая длина очереди диска - это количество невыполненных запросов к диску во время сбора сведений о загруженности. Сюда включаются запросы, обслуживаемые во время проведения замера. Этот показатель представляет собой конкретное текущее значение, и не является средним значением по некоторому интервалу времени. Многошпиндельные дисковые устройства могут обрабатывать одновременно несколько запросов, остальные имеющиеся запросы будут ожидать обслуживания. Этот счетчик может отражать постоянные изменения длины очереди, показывая то большую, то малую ее длину, но если имеется перегрузка дискового устройства, то вероятно, что значение этого счетчика будет большим постоянно. Время задержки обработки запросов пропорционально длине этой очереди минус количество шпинделей дисковых устройств. Для хорошей производительности системы среднее значение этого счетчика не должно превышать двух.

 

Минимальное значение

Максимальное значение

Среднее значение

стандартное отклонение

С фрагментацией

0

74

1,665

7,224

Без фрагментации

0

68

0,9905

2,53

 

Резюме

характеристика

Повышение эффективности

время чтения с диска

65%

время записи на диск

39%

Текущая длина очереди диска

40%

Заключение

После наглядного изображения эффекта фрагментации производительности диска остается один вопрос. Какую утилиту рекомендовано использовать для дефрагментации? На рынке имеются очень много ПО для дефрагментации. На много мощнее, чем утилиты Windows, например, DiskKeeper.

 

А теперь, бегите и дефрагментируйте свои диски, а потом расскажите о результатахУлыбка !!!!

5
Авторизуйтесь, чтобы оценить материал.
Михаил Извеков

Хороший материал, но есть один минус: графики построены с разным масштабом и, у первых двух, создается впечатление, что после дефрагментации все стало хуже.

Мохаммед Богданов

Михаил! Я с тобой согласен, но ничего не могу сделать, это графики SCOM, поэтому я не могу изменить масштабы. Там же есть таблицы, содержащие все нужные значения, и ясно видно повышение эффективности.

Рашит Сафиев

Спасибо за материал, позновательный. Делать дефрагментацию необходимо с какой-то определенной переодичностью или же по мере накопления фрагментации?

Мохаммед Богданов

Я, как администратор, каждый месяц делаю анализ фрагментации всех дисков. Если результат показывает необходимость дефрагментировать диски, то при первой же возможности я буду проводить дефрагментацию. Существует, также, ПО для дефрагментации (Например, Disk Keeper), выполняющее автоматическую дефрагментацию. Как только появляется фрагментация, ПО сразу же начинает дефрагментировать диск.

Дмитрий Тарасов

У нас тут как раз один клиент жалуется на то, что вдруг директум начал тормозить. Предложу им попробовать дефрагментировать диски, вдруг поможет. Спасибо за материал!

Мохаммед Богданов

Да, если DIRECTUM тормозит из-за проблемы с диском, то возможно фрагментация поможет. Рекомендую использовать Disk Keeper, а не утилиту Windows

Минич Денис
Disk Keeper

А что, он умеет дефрагментировать файлы используемых баз данных?

Михаил Извеков

Мохаммед, а для домашнего пользования что посоветовать можешь? Бесплатное :) 

Мохаммед Богданов

Денису: Да оно умеет дефрагментировать файлы используемых баз данных.

Михаил!  Для домашнего пользования, можно посмотрить http://www.auslogics.com/en/software/disk-defrag/ .

Михаил Романов

К сожалению, Мохамед не указал один важный момент сколько будет "стоить" операция дефрагментации.

Не могу сослаться на свой опыт - ибо его у меня практически нет, но могу заметить, что многие DBA, с которыми мне приходилось общаться on-line, относятся к слову "дефрагментация" с большим скепсисом именно в силу того, что начавшаяся в неудачный момент операция дефрагментации файлов базы, может поставить на колени всю систему. Для систем класса 7/24 - это неприемлемо.

На сколько я понял, там предпочитают бороться с подобным проблемами радикально:

  • диски для файлов данных не заняты более ничем (для СУБД, которые это позволяют - еще и не размечают разделы, т.е. используют RAW-диски).
  • файлы данных выделяют с большим запасом
  • автоувеличение не используют, а увеличивают базу руками (после того, как убедяться, что есть непрерывные области достаточного размера)
  • ...

Впрочем, для Directum, это, скорее всего, не так страшно - почти на любом предприятии (кроме сетей с большой географической распределенностью) можно найти время, когда с системой практически никто не работает.

Денис Баранов
может поставить на колени всю систему. Для систем класса 7/24 - это неприемлемо.

А DIRECTUM система класса 7/24? Может быть, мы совершили чудо и научились обновлять версию системы без отключения пользователей? Подмигивающий

Смотря что понимать по "поставить на колени всю систему". Для DIRECTUM снижение производительности системы даже на 95% в нерабочее время совершенно не критично.

Впрочем, для Directum, это, скорее всего, не так страшно - почти на любом предприятии (кроме сетей с большой географической распределенностью) можно найти время, когда с системой практически никто не работает.

Именно. Улыбка

Михаил Романов
А DIRECTUM система класса 7/24? Может быть, мы совершили чудо и научились обновлять версию системы без отключения пользователей?

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

Андрей Подкин
Может быть, мы совершили чудо и научились обновлять версию системы без отключения пользователей?

Пока нет. Но мы работаем в этом направлении.

Авторизуйтесь, чтобы написать комментарий