Опубликован: 11.12.2006 | Уровень: специалист | Доступ: платный

Лекция 5: Конфигурирование и планирование подсистемы ввода-вывода

Время поиска дорожки диска

При доступе к данным, диск должен не только повернуться в такое положение, чтобы головки могли бы прочесть данные, но и головки должны передвинуться на дорожку, на которой находятся данные. Коромысла двигаются к центру диска и наружу, перемещая головки на цилиндр, содержащий нужные данные. Время, необходимое для перемещения головок к местоположению нужных данных, называется временем поиска дорожки или просто временем поиска (seek time), или временем подвода головки к требуемой дорожке диска (см.рис. 5.3).

 Задержка вращения и время поиска

Рис. 5.3. Задержка вращения и время поиска

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

Время поиска и задержка вращения добавляются ко времени, необходимому для выполнения операции ввода-вывода и, следовательно, снижают производительность дискового накопителя. Для накопителей со скоростью вращения 10000 об/мин, задержка вращения составляет около 3 мс. Время поиска нужной дорожки зависит от размера и скорости дискового накопителя и варианта осуществляемого поиска.

Время перехода головки на соседнюю дорожку (track-to-track seek time) определяет время перехода на другую дорожку при осуществлении операций последовательного ввода-вывода. У типичных 9 Гб дисков со скоростью вращения 10000 об/мин время перехода головки с дорожки на дорожку составляет около 0,8 мс. Как видите, для дисков со временем перехода головок на соседнюю дорожку 0,8 мс, задержка вращения составляет около 3 мс и является более существенным фактором, оказывающим влияние на производительность дискового накопителя. Если операции ввода-вывода применяются к дисковому накопителю достаточно быстро, то накопитель сможет прочитывать за один раз соседние дорожки или даже прочитывать или записывать дорожку целиком за один раз. Однако так бывает не всегда. В некоторых ситуациях операции ввода-вывода запрашиваются недостаточно быстро, и на каждый запрос из серии последовательных запросов приходится по обороту диска. То, что будет происходить на самом деле, зависит от конструкции и от скорости контроллера дискового накопителя.

Среднее время поиска дорожки диска (average seek time) – это усредненное время, необходимое для перехода головок между двумя произвольно выбранными (random) дорожками диска. Исходя из таблиц с техническими характеристиками типичных дисков со скоростью вращения 10000 об/мин, их время поиска составляет около 6 мс. Поскольку почти все операции ввода-вывода, генерируемые SQL Server, будут относиться к произвольным участкам диска, то ваши дисковые накопители будут выполнять множество операций произвольного ввода-вывода.

Максимальное время поиска для дисков данного типа может достигать 13 мс. Поиск дорожки имеет максимальную длительность при переходе от самой внутренней дорожки пластины к самой внешней дорожке или наоборот. Такая ситуация называется поиск по всему диску (full-disk seek). Но при обычной работе поиск нужной дорожки не будет поиском по всему диску, особенно когда диск не заполнен до конца.

Технические характеристики накопителей на жестких дисках

В данном разделе вы узнаете, насколько быстро дисковые накопители могут выполнять различные виды операций ввода-вывода. Чтобы оценить скорость выполнения операций ввода-вывода, необходимо знать некоторые сведения о дисковом накопителе. Большинство этих сведений можно найти в технических описаниях дисков, сообщаемых их производителями. В данной лекции в качестве примера будут взяты технические характеристики накопителя с емкостью 9,1 Гб и скоростью вращения 10000 об/мин. Другие технические характеристики этого типичного дискового накопителя перечислены в табл. 5.1.

Таблица 5.1. Технические характеристики дискового накопителя (пример)
Техническая характеристика Значение Описание
Емкость диска 9.1 Гб Емкость неформатированного диска
Скорость вращения 10000 об/мин Скорость, с которой вращается диск
Скорость передачи данных 40 Мб/с Скорость шины SCSI
Среднее время поиска 5,2 мс (для чтения), 6 мс (для записи) Средняя продолжительность времени, необходимого для поиска нужной дорожки (при операциях произвольного ввода-вывода)
Время перехода головки на соседнюю дорожку 0,6 мс (для чтения), 0,9 мс (для записи) Продолжительность времени, необходимого для перехода на соседнюю дорожку (при операциях последовательного ввода-вывода)
Время поиска по всему диску 12 мс (для чтения), 13 мс (для записи) Продолжительность времени, необходимого для перехода от самого внутреннего сектора диска к самому внешнему сектору, или наоборот
Средняя задержка 2,99 мс Средняя задержка вращения
Средняя длительность работы до отказа 1 000 000 часов Средний срок службы дискового накопителя

А теперь мы расскажем, как при помощи подобных технических характеристик вы сможете оценить производительность накопителя на жестких дисках.

Производительность накопителя на жестких дисках

Продолжительность времени, необходимого для выполнения операции ввода-вывода, зависит от следующих факторов:

  • времени, необходимого для поиска нужной дорожки (чтобы головки переместились к дорожке, на которой хранятся данные);
  • задержки вращения (времени, необходимого для поворота диска, чтобы данные подошли к головкам);
  • времени, необходимого электронным схемам для передачи данных с дискового накопителя на его контроллер.

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

Максим Ерохин
Максим Ерохин
Россия, г. Санкт-Петербург
Татьяна Лубинец
Татьяна Лубинец
Россия, Уфа, Уфимский авиационный институт, 1987