RAID эконом-класса: тестирование контроллеров с интерфейсом EIDE

IDE RAID — эта пара аббревиатур, вызывающая порой улыбку профессионалов, все
чаще мелькает в спецификациях компьютерного "железа". "Компьютерное
Обозрение" не раз обращалось к этой теме, и с некоторыми устройствами наши
читатели частично знакомы. Но на рынке появляются новые продукты, и мы, пользуясь
случаем, проводим тестирование, чтобы ответить на два основных вопроса касательно
IDE RAID: а стоит ли и какой именно.

Зачем он нужен, RAID-массив?

В принципе, ответ на этот вопрос относится к разряду "уж сколько раз
твердили миру…", и сказать здесь что-то новое достаточно сложно. Поэтому
мы лишь вспомним для полноты картины основы "практической теории RAID-массивов"
применительно к недорогим решениям IDE RAID.

Как известно, RAID расшифровывается как Redundant Array of Inexpensive Disks — избыточный массив недорогих дисков. Суть заключена в самом названии: поскольку "ничто не вечно под Луной", в том числе и жесткие диски с ценной информацией, они тем или иным способом объединяются в массив, в котором отказ одного накопителя (или даже нескольких) не вызывает краха всей системы хранения данных. На практике термин RAID применяется более широко, часто обозначая просто некий дисковый массив, не обязательно избыточный и отказоустойчивый. Обычно RAID используется для следующих целей:

1.Увеличение надежности дисковой подсистемы дублированием дисков (RAID 1, или Mirroring). В этом случае создается массив из двух дисков, информация на которых полностью дублируется (откуда и название Mirroring — "зеркалирование"). При отказе одного диска система продолжит работу со вторым, где имеется полная копия данных. Полезный объем при этом составляет половину суммарной емкости, т. е. емкость одного из дисков приносится в жертву надежности.

2.Повышение производительности (RAID 0, или Stripping). Несколько дисков объединяются в один, а информация между ними распределяется поблочно. Таким образом, происходит распараллеливание процессов записи и чтения, что при удачном подборе размера блока позволяет выполнять дисковые операции ощутимо быстрее одиночного накопителя. В строгом смысле RAID 0 назвать RAID-массивом нельзя, поскольку избыточным (Redundant) он не является. Мало того, надежность такого массива даже снижена — ведь при отказе одного из дисков "падает" весь массив целиком. Потерь емкости в RAID 0 не происходит, объем всех дисков используется под данные.

3.Создание дисков большого объема (Spanning). Задача часто возникает, когда необходимо хранить объем данных, не помещающийся на одном диске (например, цифровое видео). RAID-контроллер "последовательно" объединяет два или более дисков в один. Так, из четырех 20-гигабайтовых IDE-дисков можно создать массив объемом 80 GB (правда, не отказоустойчивый). В отличие от RAID 0, в случае Spanning дисковые операции не распараллеливаются. Например, при записи большого файла сначала заполняется до отказа один диск, после чего происходит переход на следующий. Теоретически производительность остается на том же уровне, что и у одиночного диска, однако реализация массива более проста, чем RAID 0 (Stripping).

4.Увеличение надежности при экономии дисков (RAID 5). Создается на дисках числом не менее трех и является наиболее оптимальным сочетанием отказоустойчивости и экономии дискового объема. Как и в случае RAID 1, данные также записываются поблочно. Однако при RAID 5 для блоков данных вычисляется так называемая информация о четности (parity data), которая наравне с самими данными равномерно распределяется по всем дискам массива и занимает объем, примерно равный емкости одного диска. При отказе любого накопителя его данные могут быть восстановлены с использованием parity data, хранящихся на других членах массива. Производительность при чтении достаточно высока (на уровне RAID 0), но при записи обычно оказывается ниже по сравнению с одиночным диском ввиду дополнительных расходов на поддержание массива. Однако это вполне компенсируется небольшими затратами на обеспечение отказоустойчивости.

Базовой функцией большинства RAID-систем является поддержка "горячего резервирования" (hot spare). К избыточному массиву добавляется один или несколько дисков, которые не участвуют в нормальной работе, но автоматически задействуются при отказе одного из накопителей. Перенос данных на запасной диск может происходить также автоматически, в результате чего пользователь вообще не заметит сбоев в работе системы хранения данных.

Во всем своем многообразии…

Характеристики
контроллеров IDE RAID

Как известно, изначально RAID ассоциировался с интерфейсом SCSI. Ведь еще недавно
с учетом дороговизны компьютерной техники отказоустойчивость мог позволить себе
только класс high-end, а там SCSI властвовал практически безраздельно. Однако
принципиальных противопоказаний сделать RAID на жестких дисках IDE нет — были
бы диски, а на интерфейс управа найдется.

Имеющиеся на рынке контроллеры IDE RAID можно условно разделить на три класса. Первый — это карты расширения с интерфейсом PCI и IDE-портами (так называемые контроллеры PCI-to-IDE). Второй (разновидность первого) — RAID-контроллеры, интегрированные на материнские платы и обычно добавляющие два дополнительных разъема IDE. И третий — специализированные "карманы", рассчитанные на два жестких диска и аппаратно реализующие единственный тип RAID-массива — RAID 1, или "зеркало". Такие устройства, относящиеся к классу IDE-to-IDE RAID, обычно поддерживают функцию "горячей замены", не совсем стандартную для IDE-дисков.

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

Accusys
ACS-7500.
Устройство, уже известное нашим постоянным читателям, реализует
"зеркало" из двух дисков — RAID 1. Конструкция заключена в металлический
корпус и рассчитана на установку в два смежных 5,25" отсека системного блока.
Выдвижные "салазки" для двух винчестеров снабжены индикаторами состояния
и замками. Диски подключаются к жестко закрепленному разъему интерфейса, в результате
чего для накопителей Western Digital (у которых разъем несколько смещен относительно
стандартного положения) требуются специальные "салазки". В задней части
расположены один IDE-разъем, разъем питания, защищенный кожухом вентилятор и перемычка
Master/Slave. Подключается устройство, как обычный жесткий диск, и определяется
как Accusys IDE RAID. Работа ACS-7500 полностью прозрачна для операционной системы
— не требуется ни драйверов, ни дополнительного ПО.

Самой интересной особенностью Accusys ACS-7500, кроме полной прозрачности для ОС, является поддержка "горячей замены" дисков. Этот процесс выполняется безболезненно, работа устройства не прекращается. Таким образом, заменить отказавший диск можно и при включенной системе, после чего "зеркало" будет автоматически восстановлено. Состояние массива сохраняется и при выключенном питании благодаря наличию батареи. Единственное "но": узнать об отказе диска можно только по индикации на передней панели или по звуковому сигналу тревоги. И если сервер (ну хорошо, ма-аленький сервер) стоит в уединенном месте, его необходимо периодически проверять или хотя бы "прослушивать".

Кроме ACS-7500, компания выпускает также RAID-контроллеры PCI-to-IDE и SCSI-to-IDE.

Adaptec
AAA-UDMA.
Этот контроллер уникален во всех отношениях. Он единственный
среди рассматриваемых поддерживает RAID 5, единственный позволяет наращивать кэш
и единственный выглядит весьма внушительно, как "настоящий" RAID-контроллер.
Кроме того, это первый IDE RAID-контроллер компании Adaptec, ранее известной в
основном SCSI-решениями. AAA-UDMA — полноразмерная PCI-плата (длина более 30
см) со множеством элементов, содержащая, кроме всего прочего, и разъем для DIMM-модуля
(который работает кэш-буфером). Базовый объем кэша 2 MB можно увеличивать до 64
MB установкой более объемного EDO ECC DIMM.

Еще одна уникальная особенность Adaptec AAA-UDMA — наличие четырех IDE-каналов вместо традиционных двух. Число поддерживаемых дисков при этом не увеличивается (все те же четыре), но отпадает необходимость в конфигурировании Master/Slave и "драке" между ними за канал передачи.

Контроллер оснащен BIOS Setup, который, однако, мало полезен. Конфигурирование массивов выполняется либо DOS-утилитой ArrayConfig (для чего в комплекте идет системная дискета с PC DOS), либо из среды Windows. Утилита Array Config достаточно удобна, работает в двух режимах — Express и Custom. Поддерживаются RAID 0, 1, 0+1 и 5, может назначаться hot spare. Размер блока для RAID 0 и 5 варьируется в пределах от 8 до 128 KB. Как минус отметим очень длительное создание массива ввиду обязательной процедуры заполнения его нулями.

В среде Windows работой AAA-UDMA ведают драйвер и утилита Adaptec CI/O Management Software. Интерфейс очень удобен и функционален, обеспечивается полное управление контроллерами, дисками и массивами, в том числе и удаленно по сети. Для определенных событий настраивается пересылка сообщений по e-mail (которые, естественно, можно перенаправить на пейджер или мобильный телефон сисадмина). Странными кажутся необходимость ручного запуска утилиты, а также перезагрузка системы каждый раз после создания массива. В плане "непотопляемости" AAA-UDMA оказался чересчур "ОС-зависимым", т. е. восстанавливался после сбоя только при загрузке соответствующего ПО. Снова представив себе одиноко стоящий сервер с таким контроллером, приходишь к мысли о необходимости периодической "ручной" проверки или ручного запуска CI/O Management Software при каждом старте системы.

AMI
HyperDisk.
Контроллер от известного производителя RAID-систем имеет два
канала IDE и конфигурируется из собственного BIOS Setup. Интерфейс достаточно
удобен, создаются массивы 0, 1 и 0+1, а также Spare Pool, т. е. резервные диски
для RAID 0 и 0+1. Поддерживается кэширование записи (отключенное по умолчанию)
и защита от boot-вирусов. Размер блока является переменным (32—4096 KB). Есть
автоконфигурирование, при котором создается RAID 0. Похоже, AMI, как и прочие
производители, предполагает использование IDE RAID в основном для повышения производительности,
а не для обеспечения избыточности данных. Интересно, что на своем сайте AMI поместила
HyperDisk не в раздел RAID, а в IDE-контроллеры — видимо, все еще стесняясь обозначения
IDE в "закрытом клане" RAID-решений.

Вместе с драйвером устанавливается утилита HyperDisk Utility, позволяющая лишь отслеживать состояние дисков и запускать процесс перестройки массива. В отличие от других контроллеров, Windows-драйвер HyperDisk не показывает информацию о массиве, определяя его как накопитель с именем AMI HyperDisk (в случае двух массивов создается путаница). Есть DOS-утилита hyperfix.exe, с помощью которой можно стирать с жесткого диска информацию о былой принадлежности к массиву.

К особенностям HyperDisk относится останов загрузки системы при наличии новых подключенных дисков. Таким образом, все диски должны быть явно "приписаны" к массивам… пусть даже и состоящим из одного диска. Кроме того, нам так и не удалось создать RAID 0 на четырех дисках — при загрузке система зависала. Во всем остальном AMI HyperDisk работал безупречно, включая автовосстановление и использование spare-дисков.

Кроме HyperDisk, выпущен также HyperDisk 100 — аналогичный контроллер с интерфейсом ATA/100.

Expert
Electronic PC-RAID.
Устройство от компании Expert
Electronic
, поставляемое в красивой коробочной упаковке, реализует функции,
аналогичные Accusys ACS-7500. А именно — RAID 1 с поддержкой "горячей замены".
Занимает PC-RAID также два 5,25" отсека корпуса и содержит три выдвижных
"кармана" — два для жестких дисков и один для самой платы с электроникой
(видимо, для возможности замены как диска, так и частей "начинки", но,
естественно, не на ходу). "Карманы" оснащены индикаторами состояния
и замками, а жесткие диски, в отличие от Accusys ACS-7500, подключаются к коротким
гибким IDE-шлейфам. К сожалению, нижняя часть у выдвижных лотков отсутствует,
что повышает вероятность повреждения электронных компонентов в нижней части жесткого
диска. На задней панели корпуса есть вентилятор и по одному разъему питания и
интерфейса, а также переключатель режимов Master/Slave.

EPoX
BX7+100.
Это представитель материнских плат, содержащих интегрированный
RAID-чип. В данном случае это High Point HPT370, который является наследником
популярного HPT368 с поддержкой Ultra ATA/100. Сама плата выполнена на чипсете
440BX, содержит разъем Socket 370, шесть слотов PCI, один ISA и четыре DIMM. Отличительной
особенностью платы является встроенный индикатор POST-кодов (см.
"Компьютерное Обозрение", # 26, 2000
).

HPT370 содержит BIOS Setup, значительно переработанный по сравнению с HPT368, но все же достаточно неудобный. Отметим, что массивы создаются быстро, без длительной инициализации. Заявляется поддержка RAID 0, 1, 0+1 и Span. Однако массив 0+1 нам построить так и не удалось, а при наличии диска, не включенного в массив, Windows 2000 зависала при загрузке. Кроме того, замечена очень интересная особенность в виде периодической потери (!) конфигурации массивов при входе в BIOS Setup контроллера. Учитывая новизну продукта, можно ожидать ликвидации проблемы в следующих версиях BIOS платы, однако в нынешнем состоянии доверить данные такому контроллеру просто опасно. Работа spare также не выглядит изящной, поэтому использование RAID-контроллера кажется разумным только для RAID 0 с целью повышения производительности. Но лишь после исправления ошибок в BIOS, управляющей контроллером.

Iwill
SIDE-RAID66.
Еще один контроллер, использующий чип от High Point, — HPT368,
но на этот раз в виде PCI-карты. Сразу обращает на себя внимание наличие трех
разъемов IDE — двух внутренних и одного внешнего, который дублирует второй внутренний.
Видимо, идея заключалась в подсоединении жесткого диска извне для копирования
данных, однако вопрос с питанием этого диска остался на усмотрение пользователя.
Конфигурирование массива производится из BIOS, но еще менее удобно, чем у старшего
чипа HPT370. Stripped-массив можно создать только на двух дисках, и то лишь подключенных
к разным каналам. С "непотопляемостью" и автовосстановлением массива
все нормально — они напрочь отсутствуют, и поставляемое ПО продолжает делать
"хорошую мину" даже при полном отказе одного из дисков "зеркала".
Прошивка новых версий BIOS решила небольшую часть проблем, но далеко не все.

Cамое же интересное началось при установке Iwill SIDE-RAID66 в PCI-слот платы EPoX BX7+100, которая сама содержит аналогичный чип. Загрузка SIDE-RAID66 проходила более или менее нормально, но дальше пошли чудеса. BIOS интегрированного HPT370 находила все четыре диска, подключенных к SIDE-RAID66, определяла их как свои (в дополнение к четырем пустующим) и… напрочь зависала. В результате тестировать SIDE-RAID66 пришлось на другой BX-плате (ASUS CUBX).

Promise
FastTrak66.
Этот достаточно широко известный контроллер содержит два канала
IDE и поддерживает массивы RAID 0, 1, 0+1, а также Spanning. В BIOS встроена продуманная
утилита конфигурирования, размер блока может изменяться в пределах 1—1024 KB
(с шагом по степеням двойки — 1, 2, 4, 8, 16, …). При создании "зеркала"
есть возможность копировать содержимое одного диска на другой, т. е. переводить
обычный диск в RAID 1 с сохранением содержимого. Массив 0+1 создается несколько
неочевидно — как Mirror из четырех дисков. Любой из массивов может быть назначен
загрузочным. При старте системы выдается понятная диагностическая табличка, описывающая
созданные массивы и их состояние. При обнаружении сбоев загрузка приостанавливается
с приглашением входа в BIOS и устранения проблемы, но после паузы возобновляется.
Драйвер определяет наличие проблемы и ликвидирует ее самостоятельно (например,
перестраивает массив). Утилита FastCheck Monitor позволяет конфигурировать поведение
контроллера, задавать периодические проверки целостности, записывать события в
Event Log Windows NT/2000.

Среди всех контроллеров Promise FastTrak66 оказался самым устойчивым. Даже отключение диска на ходу и последующее подключение другого обрабатывались корректно, контроллер сам начинал процесс восстановления. Таким образом, FastTrak66 является примером "недокументированного hot-swap", пользоваться которым можно на свой страх и риск, но все же при необходимости — можно.

Отметим, что при проектировании FastTrak66 разработчики допустили одну весьма серьезную ошибку. Собственно, ошибкой как таковой ее назвать нельзя, но прибыли из-за нее было недополучено, наверное, очень много. Дело в том, что практически полноценный FastTrak66 можно получить… путем небольшой переделки платы Promise Ultra66, являющейся просто контроллером ATA/66. Сделаны обе карты почти одинаково, и переделка (рецептов которой достаточно в Сети) заключается в перепрошивке BIOS и перепайке одного резистора. Такие "переделанные" FastTrak66 продаются на $40—50 дешевле коробочного продукта, но вместе с тем — раза в три-четыре дороже себестоимости изготовления ("исходный материал" Promise Ultra66 стоит никак не больше $25, ну а сама переделка вряд ли обойдется дороже $5—10). Все необходимое ПО свободно доступно на сайте Promise, и приходится мириться с фактом: "переделанные" FastTrak66 работают ничуть не хуже настоящих, что было нами не раз проверено. Сразу вспоминаются переделки GeForce 256 в Quadro, которые также позволяли получить значительно более дорогой продукт из дешевого аналога.

Как проходило тестирование

Кроме собственно производительности, в процессе тестирования мы также обращали
внимание на устойчивость IDE RAID-контроллеров ко всевозможным сбоям и "интеллектуальное"
поведение в критических случаях. Испытания проходили на компьютере с процессором
Pentium III 600 MHz, 128 MB памяти, видеокартой ASUS-V6800 (GeForce 256 DDR) и
сетевым адаптером 10/100 Mbps. Для большей корректности результатов в качестве
платформы использовалась плата EPoX BX7+100 — одна из участниц тестирования,
на которую поочередно устанавливались прочие контроллеры. Исключение составил
Iwill SIDE RAID66 — его пришлось вставлять в другую плату (ASUS CUBX, 440BX).
Для создания RAID-массивов мы выбрали один из самых производительных на сегодняшний
день жестких дисков — Quantum Fireball Plus LM 20 GB (7200 об/мин, ATA/66, 2
MB кэш, 10 GB на пластине). Испытания проводились в среде Windows 2000 Professional
(Service Pack 1), которая загружалась с отдельного IDE-винчестера.

Основным инструментом для измерения производительности служил тест Intel IOMeter, позволяющий исследовать дисковую подсистему компьютера при различных моделях и степенях загрузки. Мы определили три модели, соответствующие типичным применениям жесткого диска или дискового массива, — Workstation, Database и File Server. Первая, Workstation, характеризуется случайными на 80% операциями с блоками данных 8 KB и соотношением чтение/запись 80:20. Вторая, Database, также оперирует с блоками данных 8 KB, но со 100%-ной случайностью и с соотношением чтение/запись 2:1. В третьей модели, File Server, выполняется целый набор операций с блоками от 512 байт до 64 KB также со 100%-ной случайностью и соотношением чтение/запись 80:20. Для каждой из моделей мы задали пять степеней интенсивности, определяющейся длиной очереди запросов: Lightest (1), Light (4), Normal (16), Moderate (32) и Heavy (64).

Эти три модели в сочетании с разной интенсивностью запросов позволяют проверить производительность дисковой подсистемы в различных режимах и выявить потенциально слабые места. Основными результатами, получаемыми при тестах, являлись количество операций в секунду (IOps), скорость передачи данных (KBps) и эффективность работы CPU (CPU Effectiveness), т. е. отношение числа IOps к проценту использования ресурсов процессора.

С помощью дополнительного теста HD Tach 2.61 (www.tcdlabs.com) оценивались производительность интерфейса и равномерность чтения и записи в различных областях "дисков", образованных массивами. При создании массивов RAID 0, 0+1 и 5 использовался размер блока 64 KB, принимаемый во всех контроллерах по умолчанию.

Результаты тестирования

Основные тесты производительности мы проводили в трех режимах: RAID 0 на двух дисках, RAID 1 на двух дисках и RAID 5 на трех дисках с четвертым, выступавшим в роли резервного. Дополнительно также проверялась работа RAID 0 на трех и четырех дисках и RAID 0+1 с четырьмя дисками, однако диаграммы по этим тестам мы не приводим. Для сравнения в диаграммах содержатся данные одиночного диска, подключенного к контроллеру ATA/66 Promise Ultra66. На графиках изображены только зависимости для параметра IOps, поскольку графики скорости передачи данных их практически повторяют.

RAID 0 (stripping, 2 диска). Из результатов HD Tach (рис. 1) можно видеть, что лучшую производительность показывают оба контроллера с чипами High Point: EPoX BX7+100 и Iwill SIDE-RAID66. Однако у последнего использование CPU составило целых 46% на фоне 3—5% у прочих контроллеров. Такое впечатление, что вместо режима DMA использовался PIO, хотя нигде явной установки не наблюдалось. Adaptec AAA-UDMA продемонстрировал низкую скорость записи — даже ниже, чем у одиночного диска.

Рис. 1

В модели Workstation (рис. 2) производительность всех контроллеров практически
равна и мало отличается от показателей одиночного диска. Лишь SIDE-RAID66 равномерно
отстает от остальных, а Adaptec AAA-UDMA после перехода за интенсивность Moderate
(длина очереди запросов 32) перестает наращивать производительность. Как увидим
далее, эта особенность проявляется у AAA-UDMA и в прочих тестах. В случае Database
(рис. 3) и File Server (рис. 4) картина с RAID 0 полностью аналогична модели Workstation.
Здесь SIDE-RAID66 также отстает даже от одиночного диска, а график AAA-UDMA выходит
на "полочку" при достижении интенсивности Moderate.

Рис. 2
Рис. 3
Рис. 1

RAID 1 ("зеркало", 2 диска). Эта
конфигурация, предназначенная для обеспечения надежности данных, должна обладать
той же производительностью, что и одиночный диск, или лишь немного меньшей. Действительно,
при чтении все контроллеры демонстрируют примерно равные результаты (рис. 5),
поскольку в этом случае работа идет только с одним диском из "зеркальной"
пары. Однако при записи лучшую производительность (и наименьшее ее падение относительно
Single Drive) показывают оба контроллера с чипами High Point: EPoX BX7+100 и Iwill
SIDE-RAID66, хотя у последнего процент использования CPU вновь оказался очень
велик. Снова низкую скорость записи продемонстрировал AAA-UDMA, остальные же контроллеры,
включая специализированные "зеркала" Accusys ACS-7500 и Expert Electronic
PC-RAID, были наравне.

Рис. 5
Рис. 6

Результаты IOMeter для массива RAID 1 мы не приводим — все графики практически сливаются, и лишь повторяется ситуация с "выходом на горизонтальную полочку" графика AAA-UDMA. Отметим, что этот контроллер вместе с Promise FastTrak66 демонстрирует очень низкий процент использования процессора, в результате чего их показатели CPU Effectiveness — на высоте.

RAID 5 (3 диска + spare). Этот тест проводился только для Adaptec AAA-UDMA, поскольку остальные контроллеры RAID 5 не поддерживают. Как видим (рис. 7), при небольших нагрузках (модель Workstation) RAID 5 получается почти "бесплатным" в плане производительности. Однако при росте очереди запросов отставание RAID 5 от прочих вариантов увеличивается. Таким образом, RAID 5 на Adaptec AAA-UDMA высокой производительностью не отличается. Здесь же видна достаточно посредственная реализация RAID 0 у Adaptec AAA-UDMA, по быстродействию оказывающаяся на уровне RAID 1 и даже ниже, чем у одиночного диска.

Рис. 7

В итоге, единственным плюсом RAID 5 в исполнении AAA-UDMA можно было бы назвать экономию количества дисков. Так, есть возможность создать отказоустойчивый массив, "потеряв" всего один диск, а не половину, как это происходит с "зеркалом" RAID 1 или 0+1. Однако, учитывая цену AAA-UDMA, общая стоимость такого варианта оказывается немалой. Вот, например, во что обойдется отказоустойчивый массив на 40 GB (из дисков 20 GB стоимостью порядка $130). В случае AAA-UDMA с RAID 5 на трех дисках мы получим сумму $400 + + 3 x $130 = $790. В то же время массив RAID 0+1 с использованием, например, Promise FastTrak66 и четырех дисков выльется в $90 + 4 x $130 = $610, т. е. на $180 дешевле. Отметим, что оба варианта, даже при добавлении еще одного диска для hot spare, по стоимости только приближаются к ценам SCSI RAID-контроллеров (жесткие диски для которых также достаточно дороги).

Рис. 8
Рис. 9

Подведение итогов

В результате, из универсальных IDE RAID-контроллеров хорошо проявили себя
два — AMI HyperDisk и Promise FastTrak66. Оба они работали без проблем, оказались
удобными в конфигурировании. Кроме того, "плавучесть" FastTrak66 и возможности
драйверов и ПО заслуживают всяческих похвал. Формально знак "Выбор редакции"
ввиду большого разнообразия продуктов мы не присуждали, но ближе всех к этому
был именно Promise FastTrak66.

Оба контроллера с чипами High Point продемонстрировали отличную производительность. Но Iwill SIDE-RAID66 оказался достаточно проблематичным в использовании, и его лишь с большой натяжкой можно рекомендовать очень неприхотливым пользователям, желающим создать RAID 0 из двух дисков. EPoX BX7+100, являющаяся сама по себе весьма качественной материнской платой, возможностями RAID также не блещет, хотя, учитывая новизну продукта, можно надеяться на скорое устранение недоработок. Заметим, что если большинство проблем вызвано именно самими чипами High Point, то это заставляет всерьез задуматься. Ведь очень многие производители материнских плат устанавливают подобные чипы на свои продукты — или в качестве RAID, или просто как контроллер ATA/66 или ATA/100.

От Adaptec AAA-UDMA впечатления противоречивые. С одной стороны, это продукт, по возможностям явно выделяющийся среди прочих контроллеров — четыре канала IDE, поддержка RAID 5, наращиваемый кэш… С другой — явные проблемы с производительностью, свидетельствующие о необходимости доработки продукта. Кстати, Adaptec уже выпустила новый вариант контроллера, поддерживающий интерфейс ATA/100 и содержащий ряд усовершенствований.

Ну а специализированные "зеркальные" решения Accusys ACS-7500 и Expert Electronic PC-RAID с поддержкой "горячей замены" просто оставили приятное впечатление, не вызвав никаких проблем при работе. Отметим, что цена таких устройств довольно высока ($350—400), поэтому их применение может быть достаточно узким.

Не стоит обольщаться,
или Традиционная ложка дегтя

Итак, в процессе тестирования мы смогли убедиться, что среди IDE RAID-контроллеров
есть вполне достойные экземпляры, которые можно рекомендовать для установки в
настольные системы или даже недорогие серверы. Однако сам факт такой установки
еще не дает повода бить себя кулаком в грудь с криком "А у нас есть настоящий
RAID!". Давайте в общих чертах рассмотрим проблему "SCSI vs. IDE",
на этот раз в контексте RAID-решений. Вот краткий список того, чего не умеют или
плохо умеют IDE RAID по сравнению с настоящими, "взрослыми" RAID-контроллерами
стоимостью от $800—900 и выше.
По спецификации устройства IDE/ATAPI не поддерживают возможность "горячей
замены", т. е. извлечения/установки накопителя в работающую систему (хотя
в некоторых устройствах это реализовано). В то же время для SCSI такая функция
является базовой — остановка устройства, отключение от шины и "горячее"
подсоединение описаны в спецификации.

  • Количество дисков, объединяемых в IDE RAID, — не более четырех, тогда
    как для SCSI это число доходит до пятнадцати.

  • Возможности гибкого конфигурирования контроллерам IDE RAID попросту недоступны
    ввиду их удешевленности. Вместе с тем изменение уровня RAID "на лету"
    или добавление диска в существующий массив с сохранением данных (как, например,
    это делает AMI FlexRAID) часто оказывается весьма полезным даже в небольших
    серверах.

  • Свойственное SCSI RAID наличие большого и наращиваемого кэш-буфера для
    IDE RAID пока является, скорее, исключением из правила.

  • Многие "взрослые" RAID-контроллеры оснащены батареей, которая
    в случае пропадания питания позволяет хранить незаписанные данные в кэше в
    течение нескольких суток. При последующем включении системы данные дозаписываются
    на диски, потерь не происходит. Для IDE RAID такая возможность является экзотикой,
    и при пропадании питания (и включенном кэшировании записи) потеря данных очень
    вероятна.

  • Большинство IDE RAID-контроллеров содержат два канала. И производительность
    дисков, находящихся на одном канале (а следовательно, и всего массива), будет
    ограничиваться возможностями интерфейса. О преимуществе самого интерфейса
    SCSI перед IDE было сказано уже немало, и при хорошей загрузке даже самый
    мощный контроллер IDE RAID демонстрирует весьма скромные результаты по сравнению
    с RAID в традиционном SCSI-понимании. Скорость выполнения дисковых операций
    довольно быстро достигает предела, да и процент загруженности CPU оказывается
    выше. С учетом этого строить более или менее мощный сервер на IDE RAID, "покупая
    на грош пятаков", не рекомендуется.

Есть и еще один момент. Представьте, как будут выглядеть внутренности корпуса,
в котором установлены контроллер класса Adaptec AAA-UDMA и RAID на четырех IDE-дисках.
Четыре шлейфа, соединяющих диски с контроллером, образуют такое хитросплетение,
что ни о какой нормальной циркуляции воздуха речь идти не может. То ли дело массив
на основе SCSI-дисков, которые все соединяются одним-единственным шлейфом, создающим
минимум проблем для охлаждения.

Зачем железо, коль можно "в софте"?

И напоследок коснемся еще одного вопроса, который наверняка может возникнуть,
особенно ввиду растущей популярности Windows 2000. Да, RAID — это хорошо, это
круто и надежно. Да, IDE RAID значительно дешевле SCSI. Но помилуйте, ведь работая
под Windows NT или Windows 2000, можно программно создать и "зеркало"
RAID 1, и stripped-массив RAID 0, и просто spanning-массив! Зачем тогда вообще
RAID-контроллер, пусть даже и недорогой класса IDE?

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

1.Программный RAID-массив является "ОС-зависимым", т. е. виден только из создавшей его операционной системы. Например, сделать такой массив загрузочным не удастся, поскольку сам он вновь начинает существовать только после загрузки ОС. Сама же система должна стартовать с отдельного физического диска. С другой стороны, аппаратно реализованный массив выглядит как обычный жесткий диск со всеми вытекающими последствиями. И установить на него операционную систему не составит труда, равно как и потом с него загрузиться.

2.Как бы то ни было, но поддержка программного RAID занимает часть ресурсов CPU. Кроме того, программная среда подвержена влияниям, и вероятность сбоя (в том числе и по вине внешних программных процессов) выше, чем при аппаратной реализации.

3.Некоторые IDE RAID-контроллеры все же содержат кэш-буфер, влияние которого на производительность дисковой подсистемы общеизвестно.

4.RAID-контроллеры PCI-to-IDE обычно занимают одно прерывание, тогда как интегрированный в чипсет IDE-контроллер — два. Поэтому подсоединение IDE-дисков к RAID-контроллеру и отключение в BIOS Setup "родных" IDE-каналов освобождают часть системных ресурсов.

И еще одно: недорогой RAID-контроллер может быть востребован не только в серверах,
но и в некоторых настольных системах. А как известно, самой распространенной на
сегодня ОС таких компьютеров является не Windows 2000 и уж никак не Windows NT.
А Windows 95/98/Me никаких "фокусов" с программными RAID-массивами производить
не умеют (к сожалению или к счастью — вопрос спорный). И уж здесь при необходимости
повышения производительности или надежности хранения данных от RAID-контроллера,
пусть и недорогого "IDE’шного", не денешься никуда.

Контроллеры IDE RAID предоставлены
компаниями:
Accusys, AMI, Expert Electronic — "Юстар" (044) 241-7500,
Adaptec — Европейское
представительство компании
,
EpoX — Entry (044) 246-8462,
Iwill — K-Trade (044) 252-9222,
Promise — "Проком" (044) 574-7878.
Редакция благодарит компании "ASBIS-Украина" и "Оникс",

предоставившие часть оборудования
и оказавшие содействие при подготовке данного материала.