faqs.org.ru

 Главная > Компьютеры и комплектующие > Носители информации >

FAQ по практической реализации RAID

Секция 1 из 2 - Предыдущая - Следующая

FAQ по практической реализации RAID

Когда нужен RAID?
Что такое "RAID"?
Какие существуют уровни RAID и какой из них выбрать?
Какой выбрать способ реализации RAID - программный или аппаратный?
Как выбрать модель RAID-контоллера?
Что, помимо контроллера, необходимо для практической реализации RAID?

Когда нужен RAID?

Если Вы заинтересовались этой статьей, то Вы, по-видимому, столкнулись или предполагаете вскоре столкнуться с одной из ниже перечисленных проблем на Вашем компьютере:
- явно не хватает физического объема винчестера, как единого логического диска. Наиболее часто эта проблема возникает при работе с файлами большого объема (видео, графика, базы данных);
- явно не хватает производительности винчестера. Наиболее часто эта проблема возникает при работе с системами нелинейного видео монтажа или при одновременном обращении к файлам на винчестере большого количества пользователей;
- явно не хватает надежности винчестера. Наиболее часто эта проблема возникает при необходимости работать с данными, которые ни в коем случае нельзя потерять или которые должны быть всегда доступны для пользователя. Печальный опыт показывает, что даже самая надежная техника иногда ломается и, как правило, в самый не подходящий момент.
Решить эти и некоторые другие проблемы может создание на Вашем компьютере RAID-системы.

Что такое «RAID»?

В 1987 году Паттерсон (Patterson), Гибсон (Gibson) и Катц (Katz) из калифорнийского университета Беркли опубликовали статью «Корпус для избыточных массивов из дешевых дисководов (RAID)» (A Case for Redundant Arrays of Inexpensive Disks (RAID)). В этой статье описывались разные типы дисковых массивов, обозначаемых сокращением RAID - Redundant Array of Independent (или Inexpensive) Disks (избыточный массив независимых (или недорогих) дисководов). В основу RAID положена следующая идея: объединяя в массив несколько небольших и/или дешевых дисководов, можно получить систему, превосходящую по объему, скорости работы и надежности самые дорогие дисководы. Вдобавок ко всему такая система с точки зрения компьютера выглядит как один единственный дисковод.
Известно, что среднее время наработки на отказ массива дисководов равно среднему времени наработки на отказ одиночного дисковода, деленному на число дисководов в массиве. Вследствие этого среднее время наработки на отказ массива оказывается слишком малым для многих приложений. Однако дисковый массив можно несколькими способами сделать устойчивым к отказу одного дисковода.

В вышеупомянутой статье было определено пять типов (уровней) дисковых массивов: RAID-1, RAID-2, ..., RAID-5. Каждый тип обеспечивал устойчивость на отказ, а также различные преимущества по сравнению с одиночным дисководом. Наряду с этими пятью типами популярность приобрел также дисковый массив RAID-0, НЕ обладающий избыточностью.

Какие существуют уровни RAID и какой из них выбрать?

RAID-0. Обычно определяется как НЕ избыточная группа дисководов без контроля четности. RAID-0 по способу размещения информации по дисководам, входящим в массив, иногда называется "Striping" ("полосатый" или "тельняшка"):

Дисковод 0 Дисковод 1 Дисковод 2
Блок 0
Блок 3
....
Блок N
Блок 1
Блок 4
....
Блок N+1
Блок 2
Блок 5
....
Блок N+2

Так как RAID-0 не обладает избыточностью, авария одного дисковода приводит к аварии всего массива. С другой стороны RAID-0 обеспечивает максимальную скорость обмена и эффективность использования объема дисководов. Поскольку для RAID-0 не требуются сложные математические или логические вычисления, затраты на его реализацию минимальны.

Область применения: аудио- и видео приложения требующие высокой скорости непрерывной передачи данных, которую не может обеспечить одиночный дисковод. Например, исследования, проведенные фирмой Mylex, с целью определить оптимальную конфигурацию дисковой системы для станции нелинейного видео монтажа показывают, что, по сравнению с одним дисководом, массив RAID-0 из двух дисководов дает прирост скорости записи/чтения на 96%, из трех дисководов - на 143% (по данным теста Miro VIDEO EXPERT Benchmark).
Минимальное количество дисководов в массиве "RAID-0" - 2шт.

RAID-1. Более известен как "Mirroring" ("Зеркалирование") - это пара дисководов, содержащих одинаковую информацию и составляющих один логический диск:

Дисковод 0 Дисковод 1
Блок 0
Блок 1
....
Блок N
Блок 0
Блок 1
....
Блок N

Запись производится на оба дисковода в каждой паре. Тем не менее, дисководы, входящие в пару, могут совершать одновременные операции чтения. Таким образом «зеркалирование» может удваивать скорость чтения, но скорость записи остается неизменной. RAID-1 обладает 100% избыточностью и авария одного дисковода не приводит к аварии всего массива - контроллер просто переключает операции чтения/записи на оставшийся дисковод.
RAID-1 обеспечивает наивысшую скорость работы среди всех типов избыточных массивов (RAID-1 - RAID-5), особенно в многопользовательском окружении, но наихудшее использование дискового пространства. Поскольку для RAID-1 не требуются сложные математические или логические вычисления, затраты на его реализацию минимальны.
Минимальное количество дисководов в массиве "RAID-1" - 2шт.
Для увеличения скорости записи и обеспечения надежности хранения данных несколько массивов RAID-1 можно, в свою очередь, объединить в RAID-0. Такая конфигурация называется «двухуровневый» RAID или RAID-10 (RAID 0+1):

Дисковод 0 Дисковод 1 Дисковод 2 Дисковод 3
Блок 0
Блок 2
....
Блок N
Блок 0
Блок 2
....
Блок N
Блок 1
Блок 3
....
Блок N+1
Блок 1
Блок 3
....
Блок N+1

Минимальное количество дисководов в массиве "RAID 0+1" - 4шт.
Область применения: дешевые массивы, в которых главное - надежность хранения данных.

RAID-2. Распределяет данные по страйпам размером в сектор по группе дисководов. Некоторые дисководы выделяются для хранения ECC (код коррекции ошибок). Так как большинство дисководов по умолчанию хранят коды с ECC для каждого сектора, RAID-2 не дает особых преимуществ по сравнению с RAID-3 и, поэтому, практически не применяется.

RAID-3. Как и в случае с RAID-2 данные распределяются по страйпам размером в один сектор, а один из дисководов массива отводится для хранения информации о четности:

Дисковод 0 Дисковод 1 Дисковод 2
Блок 0
Блок 2
....
Блок N
Блок 1
Блок 3
....
Блок N+1
Контрольная сумма блока 0 и 1
Контрольная сумма блока 2 и 3
....
Контрольная сумма блока N и N+1

RAID-3 полагается на коды с ECC, хранящиеся в каждом секторе для обнаружения ошибок. В случае отказа одного из дисководов восстановление хранившейся на нем информации возможно с помощью вычисления исключающего ИЛИ (XOR) по информации на оставшихся дисководах. Каждая запись обычно распределена по всем дисководам и поэтому этот тип массива хорош для работы в приложениях с интенсивным обменом с дисковой подсистемой. Так как каждая операция ввода-вывода обращается ко всем дисководам массива, RAID-3 не может одновременно выполнять несколько операций. Поэтому RAID-3 хорош для однопользовательского однозадачного окружения с длинными записями. Для работы с короткими записями требуется синхронизация вращения дисководов, так как иначе неизбежно уменьшение скорости обмена. Применяется редко, т.к. проигрывает RAID-5 по использованию дискового пространства. Реализация требует значительных затрат.
Минимальное количество дисководов в массиве "RAID-3" - 3шт.

RAID-4. RAID-4 идентичен RAID-3 за исключением того, что размер страйпов много больше одного сектора. В этом случае чтение осуществляется с одного дисковода (не считая дисковода, хранящего информацию о четности), поэтому возможно одновременное выполнение нескольких операций чтения. Тем не менее, так как каждая операция записи должна обновить содержимое дисковода четности, одновременное выполнение нескольких операций записи невозможно. Этот тип массива не имеет заметных преимуществ перед массивом типа RAID-5.
RAID-5. Этот тип массива иногда называется «массив с вращающейся четностью». Данный тип массива успешно преодолевает присущий RAID-4 недостаток - невозможность одновременного выполнения нескольких операций записи. В этом массиве, как и в RAID-4, используются страйпы большого размера, но, в отличие от RAID-4, информация о четности хранится не на одном дисководе, а на всех дисководах по очереди:

Дисковод 0 Дисковод 1 Дисковод 2
Блок 0
Блок 2
....
Контрольная сумма блока N и N+1
Блок 1
Контрольная сумма блока 3 и 4
....
Блок N+1
Контрольная сумма блока 1 и 2
Блок 3
....
Блок N

Операции записи обращаются к одному дисководу с данными и к другому дисководу с информацией о четности. Так как информация о четности для разных страйпов хранится на разных дисководах выполнение нескольких одновременных операций записи невозможно только в тех редких случаях, когда либо страйпы с данными, либо страйпы с информацией о четности находятся на одном и том же дисководе. Чем больше дисководов в массиве, тем реже совпадает местоположение страйпов информации и четности.
Область применения: надежные массивы большого объема. Реализация требует значительных затрат.
Минимальное количество дисководов в массиве "RAID-5" - 3шт.

RAID-1 или RAID-5?
RAID-5 по сравнению с RAID-1 более экономно использует дисковое пространство, так как в нем для избыточности хранится не «копия» информации, а контрольное число. В результате в RAID-5 можно объединить любое количество дисководов, из которых только один будет содержать избыточную информацию.
Но более высокая эффективность использования дискового пространства достигается за счет более низкой скорости обмена информацией. Во время записи информации в RAID-5 надо каждый раз обновлять информацию о четности. Для этого надо определить, какие именно биты четности изменились. Сначала считывается подлежащая обновлению старая информация. Затем эта информация перемножается по XOR с новой информацией. Результат этой операции - битовая маска, в которой каждый бит =1 означает, что в информации о четности в соответствующей позиции надо заменить значение. Затем обновленная информация о четности записывается на соответствующее место. Следовательно, на каждое требование программы записать информацию, RAID-5 совершает два чтения, две записи и две операции XOR.
За то, что более эффективно используется дисковое пространство (вместо копии данных хранится блок четности) приходится платить: на генерацию и запись информации о четности уходит добавочное время. Это означает, что скорость записи на RAID-5 ниже, чем на RAID-1 в соотношении 3:5 или даже 1:3 (т.е. скорость записи на RAID-5 составляет от 3/5 до 1/3 от скорости записи RAID-1). Из-за этого RAID-5 бессмысленно создавать в программном варианте. Их также нельзя рекомендовать в тех случаях, когда именно скорость записи имеет решающее значение.

Какой выбрать способ реализации RAID - программный или аппаратный?

Прочитав описание различных уровней RAID можно заметить, что нигде не упоминаются какие-либо специфические требования к аппаратуре, которая необходима для реализации RAID. Из чего можно сделать вывод, что все, что нужно для реализации RAID - подключить необходимое количество дисководов к имеющемуся в компьютере контроллеру и установить на компьютер специальное программное обеспечение. Это верно, но не совсем!
Действительно, существует возможность программной реализации RAID. Примером может служить ОС Microsoft Windows NT 4.0 Server, в которой возможна программная реализация RAID-0, -1 и даже RAID-5 (Microsoft Windows NT 4.0 Workstation обеспечивает только RAID-0 и RAID-1). Однако данное решение следует рассматривать, как крайне упрощенное, не позволяющее полностью реализовать возможности RAID-массива. Достаточно отметить, что при программной реализации RAID вся нагрузка по размещению информации на дисководах, вычислению контрольных кодов и т.д. ложится на центральный процессор, что естественно, не увеличивает производительности и надежности системы. По тем же причинам, здесь практически отсутствуют какие-либо сервисные функции и все операции по замене неисправного дисковода, добавления нового дисковода, изменения уровня RAID и т. п. производятся с полной потерей данных и при полном запрете выполнения каких-либо других операций. Единственное достоинство программной реализации RAID - минимальная стоимость.

Гораздо больше возможностей дает аппаратная реализация RAID при помощи специальных RAID-контроллеров:

- специализированный контроллер освобождает центральный процессор от основных операций с RAID, причем эффективность контроллера тем более заметна, чем выше уровень сложности RAID;
- контроллеры, как правило, снабжены драйверами, позволяющими создать RAID практически для любой популярной ОС;
- встроенный BIOS контроллера и прилагаемые к нему программы управления позволяют администратору системы легко подключать, отключать или заменять дисководы, входящие в RAID, создавать несколько RAID-массивов, причем даже разных уровней, контролировать состояние дискового массива и т.д. У «продвинутых» контроллеров эти операции можно производить «на лету», т.е. не выключая системный блок. Многие операции могут быть выполнены в «фоновом режиме», т.е. не прерывая текущую работу и даже дистанционно, т.е. с любого (конечно при наличии доступа) рабочего места;
- контроллеры могут оснащаться буферной памятью («кэш»), в которой запоминаются несколько последних блоков данных, что, при частом обращении к одним и тем же файлам, позволяет значительно увеличить быстродействие дисковой системы.
Недостатком аппаратной реализации RAID является относительно высокая стоимость RAID-контроллеров. Однако, с одной стороны, за все (надежность, быстродействие, сервис) надо платить. С другой стороны, в последнее время, с развитием микропроцессорной техники, стоимость RAID-контоллеров (особенно младших моделей) стала резко падать и стала сравнимой со стоимостью обыкновенных дисковых контроллеров, что позволяет устанавливать RAID-системы не только в дорогие мэйнфреймы, но и в сервера начального уровня и даже в рабочие станции.

Как выбрать модель RAID-контроллера?

Можно выделить несколько типов RAID-контроллеров в зависимости от их функциональных возможностей, конструктивному исполнению и стоимости:
1. Контроллеры дисковода с функциями RAID.
По сути, это обыкновенный дисковый контроллер, который благодаря специальной прошивке BIOS позволяет объединять дисководы в RAID-массив, как правило, уровня 0, 1 или 0+1.

Ultra (Ultra Wide) SCSI контроллер фирмы Mylex KT930RF (KT950RF).
Внешне данный контроллер ни чем не отличается от обыкновенного SCSI-контроллера. Вся "специализация" находится в BIOS, который как бы разделен на две части - «Конфигурация SCSI» / «Конфигурация RAID». Несмотря на невысокую стоимость (менее $200) данный контроллер обладает неплохим набором функций:

- объединение до 8-и дисководов в RAID 0, 1или 0+1;
- поддержка Hot Spare для замены "на лету" вышедшего из строя дисковода;
- возможность автоматической (без вмешательства оператора) замены неисправного дисковода;
- автоматический контроль целостности и идентичности (для RAID-1) данных;
- наличие пароля для доступа в BIOS;
- программа RAIDPlus представляющая информацию о состоянии дисководов в RAID;
- драйвера для DOS, Windows 95, NT 3.5x, 4.0


IDE контроллер фирмы Promise FastTRAK
Данный контроллер содержит два независимых IDE канала. Добавив второй контроллер FastTrak можно получить четыре независимо работающих канала. BIOS, установленный на контроллере, полностью берет на себя все функции прерывания INT13. В частности, он позволяет организовать загрузку с любого из дисковых массивов, подключенных через FastTrak. BIOS, установленный на контроллере, также поддерживает все функции Extended INT13, в том числе и поддержку дисков объемом более 8.4 Гбайта. Стоимость контроллера менее $150. Контроллер обладает следующими характеристиками:

- объединение до 4-х (до 8-и с двумя контроллерами) дисководов в RAID 0, 1или 0+1;
- поддержка Hot Spare для замены "на лету" вышедшего из строя дисковода;
- драйвера для DOS, Windows 95/98, NT 3.x/4.х, Novell Netware 3.1x/4.x, OS/2 Warp 2.x/3.0


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

Выводы: Контроллеры дисковода с функциями RAID вряд ли можно рекомендовать в качестве RAID-контроллера для сервера даже среднего уровня (отсутствует кэш, не поддерживается RAID-3 или -5). В то же время, это прекрасный выбор для серверов начального уровня, графических станций и систем нелинейного видео монтажа, для которых основным параметром является соотношение цена/производительность.

2. RAID-контоллеры, работающие в паре с уже имеющимся дисковым контроллером.
Данные RAID-контроллеры рассчитаны на работу с системными платами, на которых интегрирован дисковый контроллер. Таким образом, на плате контроллера находиться только "логическая" часть RAID-контроллера, а функции обмена данными с дисководами возложена на дисковый контроллер интегрированный на системной плате. Такие "усеченные" контроллеры, как правило, поддерживают многие функции полнофункциональных RAID-контроллеров, и, в тоже время, стоят намного дешевле. Однако данное решение не лишено недостатков. Главное из них - каждый "усеченный" контроллер жестко "привязан" к конкретному типу микросхем дискового контроллера и, следовательно, будет работать только на тех системных платах, на которых интегрирована такая микросхема.

Ultra2 SCSI контроллер фирмы Mylex AcceleRAID 150, AcceleRAID 200, AcceleRAID 250
Ultra2 SCSI контроллер фирмы AMI MegaRAID® Express 762


Mylex AcceleRAID 150

Mylex AcceleRAID 200

Mylex AcceleRAID 250

AMI MegaRAID® Express 762

Основные характеристики RAID-контоллеров:

Модель/параметр Mylex AcceleRAID 150 Mylex AcceleRAID 200 Mylex AcceleRAID 250 AMI MegaRAID® Express 762
RISC процессор i960RP 33MHz i960RD 66MHz i960RD 66MHz i960RP 33MHz
Кэш 4MB EDO 4—64MB ECC EDO JEDEC SIMM 4—64MB ECC EDO JEDEC SIMM 4—128MB FPM parity SIMM
Поддерживаемые уровни RAID 0, 1, 0+1, 3, 5, 10, 30, 50, JBOD 0, 1, 0+1, 3, 5, 10, 30, 50 & JBOD 0, 1, 0+1, 3, 5, 10, 30, 50 & JBOD 0, 1, 3, 5, 10, 30 & 50
Тип SCSI канала на контроллере Ultra2 SCSI (LVD) Нет Ultra2 SCSI (LVD) Нет
Тип SCSI канала на системной плате UltraWide-, Ultra2 SCSI (LVD) UltraWide-, Ultra2 SCSI (LVD) UltraWide-, Ultra2 SCSI (LVD) UltraWide-, Ultra2 SCSI (LVD)
Кластеризация RAID-контоллеров Нет Нет Да (NT only) Нет
Автоматическое определение неисправных дисков Да Да Да Да
Поддержка Hot swapping Да Да Да Да
Поддержка Hot spare Да Да Да Да
Программа конфигурирования In BIOS In BIOS In BIOS Power Console Plus
Программа управления Global Array Manager Global Array Manager Global Array Manager Power Console Plus
Поддерживаемые системные платы На базе Symbios (53C876, 53C895, 53C896 и т.д.), например Intel N440BX, T440BX, NA440BX и NC440BX На базе Symbios (53C876, 53C895, 53C896 и т.д.), например Intel N440BX, T440BX, NA440BX и NC440BX На базе Symbios (53C876, 53C895, 53C896 и т.д.), например Intel N440BX, T440BX, NA440BX, NC440BX, SC450NX На базе Symbios, например Intel N440BX, SC450NX, или AMI MegaRUM
Драйвера для ОС Windows NT 4.0,NetWare 3.x/4.x/5.x and SMP, SCO UnixWare 2.1, 7.0, UNIX OSR 5.x,Linux 2.2 Windows NT server 4.0, NetWare 4.x/5.x and SMP, SCO UnixWare 2.1, 7.0, UNIX OSR 5.x Windows NT server 4.0, NetWare 4.x/5.x and SMP, SCO UnixWare 2.1, 7.0, UNIX OSR 5.x Windows NT 3.x/4.0, NetWare 3.1x/4.x, SCO UNIX SVR 4.2/ODT 3.0/ 5.0, OS/2 2.x/ Warp 3.x/4, UnixWare SMP 2.0/2.1, SCO OpenServer 5.0x

Объединение RAID-контоллера с дисковым контроллером через шину PCI значительно нагружает последнюю, тормозя другие операции ввода-вывода. Для повышения общей производительности системы на некоторых системных платах введен дополнительный интерфейс, названный PCI-RAIDport и позволяющий RAID-контоллеру напрямую обмениваться данными с интегрированным на системной плате SCSI-контроллером.

Для такого интерфейса требуется специализированный RAID-контоллер, например Ultra2 SCSI контроллер ARO1130U2 фирмы Adaptec. Основные характеристики:

- Поддерживаемые уровни RAID: 0, 1 , 0+1, 5;
- Кэш 2—64MB EDO DIMM Unbuffered Parity;
- Рассчитан на работу с системными платами, на которых интегрирован RAIDport II или RAIDport III коннектор и Ultra/Ultra2 SCSI контроллер AIC-7890 или AIC-7896, например Intel L440GX+, C440GX+, SuperMicro P6DBU, S2DGU;
- Поддержка Hot Spare и Hot Swap для замены "на лету" вышедшего из строя дисковода;
- Драйвера для Windows NT 4.0, NetWare 4.11 and 5.0, UnixWare 7.01


Выводы: RAID-контоллеры, работающие в паре с уже имеющимся дисковым контроллером, имеют стоимость не намного выше стоимости качественных Ultra2 SCSI дисковых контроллеров и, в тоже время, по характеристикам почти не уступают полнофункциональным RAID-контоллерам (отсутствует батарейный модуль для защиты кэша и не предусмотрена кластеризация RAID-контроллеров). Недостатком можно считать то, что эти контроллеры «заточены» для работы с определенными типами системных плат, что сужает область их применения. Следует отметить, что контроллеры Mylex AcceleRAID 150 и Mylex AcceleRAID 250 имеют свой Ultra2 SCSI дисковый контроллер, что позволяет использовать их как самостоятельные одноканальные Ultra2 SCSI RAID-контоллеры с любой PCI системной платой.

Секция 1 из 2 - Предыдущая - Следующая

Вернуться в раздел "Носители информации" - Обсудить эту статью на Форуме
Главная - Поиск по сайту - О проекте - Форум - Обратная связь

© faqs.org.ru