Технология обеспечения отказоустойчивости с помощью массивов жестких дисков называется RAID - Redundant Array of Inexpensive Disks (избыточный массив недорогих дисков). Наличие избыточности, однако, не гарантирует 100% надежности хранения данных. При выходе системы из строя (например, из-за поломки RAID-контроллера) восстановление данных с RAID массива является более сложной и трудоемкой задачей, чем восстановление информации с отдельного жесткого диска. Она занимает длительный отрезок времени и требует значительных трудозатрат. Иногда для восстановления информации с RAID массива даже приходится писать специальные программные модули, позволяющие «собрать» испорченные данные, распределенные по многим жестким дискам.
RAID - аббревиатура,
расшифровываемая как Redundant Array of Independent Disks -
"отказоустойчивый массив из независимых дисков” (раньше
иногда вместо Independent использовалось слово Inexpensive). Концепция
структуры, состоящей из нескольких дисков, объединенных в группу,
обеспечивающую отказоустойчивость родилась в 1987 году в
основополагающей работе Паттерсона, Гибсона и Катца.
Рассмотрим основные характеристики уровней RAID массивов с точки зрения
надежности и сложности восстановления данных.
RAID 0
Массив
RAID 0 по существу не является отказоустойчивой системой, но способен
значительно повысить производительность. В обычной системе данные
последовательно записываются на каждый диск raid массива, пока не будет
исчерпан его объем. Массив RAID 0 распределяет данные по дискам массива
следующим образом. Если, например, в RAID0 используются четыре диска ,
то данные записываются на первую дорожку первого диска, затем на первую
дорожку второго диска, первую дорожку третьего и первую дорожку
четвертого. Затем данные записываются на вторую дорожку первого диска и
т. д. Такое распределение данных позволяет одновременно читать и
записывать данные на четырех дисках и тем самым увеличивает
производительность системы. С другой стороны, если один из дисков RAID
0 выйдет из строя, восстановление данных придется делать тоже на всех
четырех дисках. Таким образом, технология RAID 0 является самой
быстрой, но и самой ненадежной с точки зрения сохранения информации.
RAID 1
Массив
RAID 1 реализует метод зеркаливания/дуплексирования данных, создавая
для каждого диска массива вторую копию данных на отдельном диске.
Дуплексирование помимо данных на диске дублирует также адаптерную плату
и кабель, обеспечивая еще большую избыточность. Метод хранения двух
копий данных - надежный способ реализации отказоустойчивой дисковой
подсистемы, и он нашел широкое применение в современных архитектурах
хранения данных.
RAID 2
Массив
RAID 2 распределяет данные на жестких дисках массива побитно: первый
бит записывается на первом жестком диске, второй бит - на втором
жестком диске и т. д. Избыточность обеспечивается за счет нескольких
дополнительных дисков, куда записывается код коррекции ошибок. Эта
реализация дороже, поскольку требует больших накладных расходов: raid
массив с числом основных дисков от 16 до 32 должен иметь три
дополнительных жестких диска для хранения кода коррекции. Массив RAID 2
обеспечивает высокую производительность и надежность, но его применение
ограничено главным образом рынком компьютеров для научных исследований
из-за высоких требований к минимальному объему дискового пространства
массива. В сетевых файловых серверах этот метод в настоящее время не
используется.
RAID
3
Массив
RAID 3 распределяет данные на жестких дисках массива побайтно: первый
байт записывается на первом жестком диске массива, второй байт - на
втором жестком диске и т. д. Избыточность обеспечивает один
дополнительный жесткий диск, куда записывается сумма данных по модулю 2
(XOR) для каждого из основных дисков массива. Таким образом, массив
RAID 3 разбивает записи файлов данных, храня их одновременно на
нескольких жестких дисках и обеспечивая очень быстрые чтение и запись.
XOR-сегменты на дополнительном диске позволяют обнаружить любую
неисправность дисковой подсистемы, а специальное ПО определит, какой из
дисков массива вышел из строя. Использование побайтного распределения
данных позволяет выполнять одновременное чтение или запись данных с
нескольких дисков для файлов с очень длинными записями. В каждый момент
времени может выполняться только одна операция чтения или записи.
RAID 4
Массив
RAID 4 аналогичен массиву RAID 3, за тем исключением, что данные
распределяются на жестких дисках по блокам. Для хранения XOR-сегментов
также используется один дополнительный диск в raid массиве. Такая
реализация raid массива удобна для файлов с очень короткими записями и
большей частотой операций чтения по сравнению с операциями записи на
raid, поскольку в этом случае при подходящем размере блоков на диске
возможно одновременное выполнение нескольких операций чтения. Однако
по-прежнему допустима только одна операция записи на дисковый массив в
момент времени, так как все операции записи используют один и тот же
дополнительный диск для вычисления контрольной суммы в raid массиве.
RAID 5
В массиве
RAID 5 как и RAID 4, использует поблоковое распределение данных, но
XOR-сегменты распределены по всем жестким дискам массива. Это позволяет
выполнять несколько операций записи на диски одновременно. Массив RAID
5 также удобен для файлов с короткими записями.
RAID 7
Массив
RAID 7 является разработкой компании Storage Computer.Массив RAID 7 не
является, по существу, уровнем RAID, поскольку не предлагает новых
способов организации данных. Основные изменения коснулись способов
доступа к данным raid массива. Все жесткие диски, которых может быть до
48 (46 - непосредственно для данных, 1 для четности, 1 - в горячем
резерве), подключены к индивидуальным каналам, что позволяет
организовать асинхронный доступ к данным raid массива. Система
поддерживает подключения к 12 хостам, обмен данными с которыми тоже
осуществляется асинхронно. Доступом к каждому жесткому диску и
операциями с каждым хостом заведует свой интеллектуальный контроллер с
ассоциированным буфером. В системе имеется объединенный кэш и процессор
управления доступом, работающий в системе реального времени. В случае
отказа жестких дисков или других элементов запрос помещается в кэш, в
то время как система перестраивает данные.Массив RAID 7 поддерживает
все традиционные уровни RAID, но преимущественно ориентируется на
уровни RAID 3 и RAID5, автоматически адаптируя способ организации
хранения данных под конкретные задачи.
RAID
10
Массив RAID 10 объединяет технологии
RAID 1 и RAID 0. Жесткие диски сначала зеркалируются в массив RAID 1, а
потом используется попеременная запись RAID 0.