В основе средств обеспечения отказоустойчивости дисковой памяти лежит общей для всех отказоустойчивых систем принцип избыточности, и дисковые подсистемы RAID – Redundant Array of Inexpensive Disks –избыточный массив недорогих дисков, массивы отказоустойчивых дисков.Идея технологии RAID-массивов состоит в том, что для хранения данных используется несколько дисков, даже в тех случаях, когда для таких данных хватило бы места на одном диске.
RAID-массив может быть создан на базе нескольких обычных дисковых устройств, управляемых обычными контроллерами, в этом случае для организации управления всей совокупностью дисков в операционной системе должен быть установлен специальный драйвер.
Дисковый массив RAID представляется для пользователей и прикладных программ единым логическим диском.
Различают несколько вариантов RAID-массивов: RAID-0, RAID-1, RAID-2, RAID-3, RAID-4, RAID-5, RAID-10.
При оценке эффективности RAID-массивов используются следующие критерии:
1)степень избыточности хранимой информации;
2)производительность операций чтения и записи;
3)степень отказоустойчивости.
RAID-0
В логическом устройстве RAID-0 общий контроллер при выполнении операции записи разбивает данные на блоки и передает их параллельно на все диски. Позволяет записывать блок файла на отдельный физический диск.
По сравнению с одиночным диском, производительность RAID-0 значительно выше за счет одновременности операций записи/чтения по всем дискам массива. Не обладает избыточностью данных, а значит, не имеет возможности повысить отказоустойчивость. Отказоустойчивость снижается, поскольку если один из дисков выйдет из строя, то восстанавливать придется все диски массива. Еще один недостаток – если потребуется изменить объем памяти логического устройства, то придется добавить еще один диск уже к имеющимся в RAID-массиве дисков и перераспределить информацию по всему изменившемуся набору дисков.
RAID-1
Реализует подход, называемый зеркальным копированием. Логическое устройство в этом случае образуется на основе одной или несколько пар дисков, в которых один диск являются основным, а другой диск дублирует информацию, находящуюся на основном диске. Позволяет ввести запись одновременно на два диска. Если основной диск выходит из строя, зеркальный продолжает сохранять данные, тем самым обеспечивается повышенная отказоустойчивость логического устройства. За это приходится платить избыточностью – все данные хранятся на логическом устройстве в двух экземплярах, в результате дисковое пространство используется лишь на 50%. Удвоение количества операций записи снижает производительность дисковой подсистемы, поэтому во многих случаях наряду с дублированием дисков дублируется и их контроллеры. Такое дублирование повышает скорость операций записи и обеспечивает большую надежность системы – данные на зеркальном диске останутся доступными не только при сбое диска, но и в случае сбоя дискового контроллера.
RAID-2
Разделяет данные побитно. Отказоустойчивость реализуется путем использования для кодирования данных корректирующего кода Хэмминга, который обеспечивает исправление однократных ошибок и обнаружение двукратных ошибок. Избыточность обеспечивается за счет нескольких дополнительных дисков, куда записывается код коррекции ошибок. Обеспечивает высокую производительность и надежность. Применяется в основном в мэйнфремах и суперкомпьютерах.
Минимум – три диска. Оптимальное - 32 диска и 3 диска для записи кода коррекции.
RAID-3
Разделяет данные побайтно с выделением одного диска на весь набор для контроля четности. Диск четности является резервным. Если какой-либо диск выходит из строя, то данные остальных дисков плюс данные остальных дисков плюс данные о четности резервного диска позволяют определить, какой из дисков массива вышел из строя и восстановить утраченную информацию. Это восстановление может выполняться динамически, по мере поступления запросов, или в результате выполнения специальной процедуры восстановления, когда содержимое отказавшего диска заново генерируется и записывается на резервный диск. Динамическое восстановление данных снижает производительность дисковой подсистемы. Позволяет одновременное чтение или запись данных на несколько дисков для файлов с длинными записями.
Минимальное количество дисков равно трем.
Диск 1
Диск 2
Диск 3
Диск 4
0000 0001
0000 0010
0000 0011
0000 0000
0000 0100
0000 0101
0000 0110
0000 0111
RAID-4
Аналогично RAID-3, данные распределяет блоками, кластерами. За счет этого может происходить независимый обмен с каждым диском. Допустима только одна операция записи в каждый момент времени, так как все операции записи используют один и тот же дополнительный диск для вычисления контрольной суммы, поэтому скорость выполнения операции записи снижается.
RAID-5
Аналогично RAID-4, но данные о контроле четности распределяется по всем дискам массива.
Наибольшей выйграш в производительности достигается при операциях чтения. Высокая скорость чтения. Повышается скорость записи по сравнением с RAID-4, но ниже по сравнению со скоростями RAID-1 или RAID-3.