Часть 3. RAID системы

Технология RAID (Redundant Array of Independent Disks — избыточный массив независимых дисков) имеет несколько реализаций, и две из них популярны в настольных системах.

Именно так был представлен RAID своими исследователями Петтерсоном(David A. Patterson), Гибсоном(Garth A. Gibson) и Катцом(Randy H. Katz) в 1987 году.

Пара слов о подключении устройства.

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

Различают несколько основных уровней RAID-массивов: RAID 0, 1, 2, 3, 4, 5, 6, 7. Также существуют комбинированные уровни, такие как RAID 10, 0+1, 30, 50, 53

Три основных варианта реализации RAID систем:

· программная (software-based);

· аппаратная - шинно-ориентированная (bus-based);

· аппаратная - автономная подсистема (subsystem-based).

Неизвестно что лучше.

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

Главное преимущество программной реализации - низкая стоимость. Но при этом у нее много недостатков: низкая производительность, загрузка дополнительной работой центрального процессора, увеличение шинного трафика. Программно обычно реализуют простые уровни RAID - 0 и 1, так как они не требуют значительных вычислений. Учитывая эти особенности, RAID системы с программной реализацией используются в серверах начального уровня.

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

Шинно-ориентированные реализации представляют собой RAID контроллеры, которые используют скоростную шину компьютера, в который они устанавливаются (в последнее время обычно используется шина PCI).

Линейный RAID — представляет собой простое объединение дисков, создающее большой виртуальный диск. В линейном RAID, блоки выделяются сначала на одном диске, включенном в массив, затем, если этот заполнен, на другом и т.д. Такое объединение не даёт выигрыша в производительности, так как скорее всего операции ввода/вывода не будут распределены между дисками. Линейный RAID также не содержит избыточности и, в действительности, увеличивает вероятность сбоя — если всего одни диск откажет, весь массив выйдет из строя. Ёмкость массива равняется суммарной ёмкости всех дисков.

RAID 0 Дисковый массив без отказоустойчивости (Striped Disk Array without Fault Tolerance)

информацию распределяет сразу по всем входящим в массив дискам в виде небольших блоков («страйпов»).

Преимущества:

· наивысшая производительность в приложениях, требующих интенсивной обработки запросов ввода/вывода и данных большого объема;

· простота реализации;

· низкая стоимость;

· максимальная эффективность использования дискового пространства — 100%.

Недостатки:

· не является "настоящим" RAID`ом, поскольку не поддерживает отказоустойчивость;

· отказ одного диска влечет за собой потерю всех данных массива.

RAID 1 Дисковый массив с зеркалированием (Mirroring & Duplexing)

Дисковый массив с дублированием информации (зеркалированием данных). В простейшем случае два накопителя содержат одинаковую информацию и являются одним логическим диском.

Преимущества:

· простота реализации;

· простота восстановления массива в случае отказа (копирование).

Недостатки:

· высокая стоимость — 100-процентная избыточность;

· невысокая скорость передачи данных.

RAID 2
Отказоустойчивый дисковый массив с использованием кода Хемминга (Hamming Code ECC)

Схема резервирования данных с использованием кода Хэмминга (Hamming code) для коррекции ошибок. Поток данных разбивается на слова — причем размер слова соответствует количеству дисков для записи данных. Для каждого слова вычисляется код коррекции ошибок, который записывается на диски, выделенные для хранения контрольной информации. Их число равно количеству бит в слове контрольной суммы.


RAID 2 не получил коммерческого применения

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

Преимущества:

· достаточно простая реализация;

· коррекция ошибок "на лету";

· очень высокая скорость передачи данных;

· при увеличении количества дисков накладные расходы уменьшаются.

Недостатки:

· низкая скорость обработки запросов;

· высокая стоимость;

· большая избыточность.

RAID 3
Отказоустойчивый дисковый массив с параллельной передачей данных и четностью (Parallel Transfer Disks with Parity)

Отказоустойчивый массив с параллельным вводом/выводом данных и диском контроля четности. Поток данных разбивается на порции на уровне байт (хотя возможно и на уровне бит) и записывается одновременно на все диски массива, кроме одного. Один диск предназначен для хранения контрольных сумм, вычисляемых при записи данных. Поломка любого из дисков массива не приведет к потере информации.


В RAID 3 информация разбивается на порции одинакового размера

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

Этот уровень подходит для приложений с файлами большого объема и малой частотой обращений (в основном это сфера мультимедиа). Использование только одного диска для хранения контрольной информации объясняет тот факт, что коэффициент использования дискового пространства достаточно высок (как следствие этого — относительно низкая стоимость). Для реализации массива требуется не меньше трех винчестеров.

Преимущества:

· отказ диска мало влияет на скорость работы массива;

· высокая скорость передачи данных;

· высокий коэффициент использования дискового пространства.

Недостатки:

сложность реализации;

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

RAID 4
Отказоустойчивый массив независимых дисков с общим диском четности (Independent Data Disks with Shared Parity Disk)

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


В RAID 4 поток данных разделяется на блоки

У RAID 4 возможно одновременное выполнение нескольких операций чтения. Этот массив повышает производительность передачи файлов малого объема (за счет распараллеливания операции считывания). Но поскольку при записи должна изменяться контрольная сумма на выделенном диске, одновременное выполнение операций невозможно (налицо асимметричность операций ввода и вывода). Этот уровень имеет почти все недостатки RAID 3 и не обеспечивает преимущества в скорости при передаче данных большого объема. Схема хранения разрабатывалась для приложений, в которых данные изначально разбиты на небольшие блоки, поэтому нет необходимости разбивать их дополнительно. Эта схема хранения данных имеет невысокую стоимость, но ее реализация достаточно сложна, как и восстановление данных при сбое.

Преимущества:

· высокая скорость передачи данных;

· отказ диска мало влияет на скорость работы массива;

· высокий коэффициент использования дискового пространства.

Недостатки:

· достаточно сложная реализация;

· очень низкая производительность при записи данных;

· сложное восстановление данных.

RAID 5
Отказоустойчивый массив независимых дисков с распределенной четностью (Independent Data Disks with Distributed Parity Blocks)

Самый распространенный уровень. Блоки данных и контрольные суммы циклически записываются на все диски массива, отсутствует выделенный диск для хранения информации о четности, нет асимметричности конфигурации дисков.

В случае RAID 5 все диски массива имеют одинаковый размер — но один из них невидим для операционной системы. Например, если массив состоит из пяти дисков емкостью 10 Гб каждый, то фактически размер массива будет равен 40 Гб — 10 Гб отводится на контрольные суммы. В общем случае полезная емкость массива из N дисков равна суммарной емкости N–1 диска.

В RAID 5 отсутствует выделенный диск для хранения информации о четности

Самый большой недостаток уровней RAID от 2-го до 4-го — это наличие отдельного диска (или дисков), хранящего информацию о четности. Скорость выполнения операций считывания достаточно высока, так как не требует обращения к этому диску. Но при каждой операции записи на нем изменяется информация, поэтому схемы RAID 2-4 не позволяют проводить параллельные операции записи. RAID 5 не имеет этого недостатка, так как контрольные суммы записываются на все диски массива, что делает возможным выполнение нескольких операций чтения или записи одновременно. RAID 5 имеет достаточно высокую скорость записи/чтения и малую избыточность.

Преимущества:

высокая скорость записи данных;

достаточно высокая скорость чтения данных;

высокая производительность при большой интенсивности запросов чтения/записи данных;

высокий коэффициент использования дискового пространства.

Недостатки:

· низкая скорость чтения/записи данных малого объема при единичных запросах;

· достаточно сложная реализация;

· сложное восстановление данных.

RAID 6
Отказоустойчивый массив независимых дисков с двумя независимыми распределенными схемами четности (Independent Data Disks with Two Independent Distributed Parity Schemes)

RAID 6 — это отказоустойчивый массив независимых дисков с распределением контрольных сумм, вычисленных двумя независимыми способами. Этот уровень во многом схож с RAID 5. Только в нем используется не одна, а две независимые схемы контроля четности, что позволяет сохранять работоспособность системы при одновременном выходе из строя двух накопителей. Для вычисления контрольных сумм в RAID 6 используется алгоритм, построенный на основе кода Рида-Соломона (Reed-Solomon).

RAID 6 использует две независимые схемы контроля четности

Этот уровень имеет очень высокую отказоустойчивость, большую скорость считывания (данные хранятся блоками, нет выделенных дисков для хранения контрольных сумм). В то же время из-за большого объема контрольной информации RAID 6 имеет низкую скорость записи. Он очень сложен в реализации, характеризуется низким коэффициентом использования дискового пространства: для массива из пяти дисков он составляет всего 60%, но с ростом числа дисков ситуация исправляется.

RAID 6 по многим характеристикам проигрывает другим уровням, поэтому на сегодня не получил коммерческого применения.

Преимущества:

· высокая отказоустойчивость;

· достаточно высокая скорость обработки запросов;

Недостатки:

· низкая скорость чтения/записи данных малого объема при единичных запросах;

· очень сложная реализация;

· сложное восстановление данных;

· низкая скорость записи данных.

RAID 7
Отказоустойчивый массив, оптимизированный для повышения производительности (Optimized Asynchrony for High I/O Rates as well as High Data Transfer Rates)

В отличие от других уровней, RAID 7 не является открытым индустриальным стандартом — это зарегистрированная торговая марка компании Storage Computer Corporation. Массив основывается на концепциях, использованных в третьем и четвертом уровнях. Добавилась возможность кэширования данных. В состав RAID 7 входит контроллер со встроенным микропроцессором под управлением операционной системы реального времени (real-time OS). Она позволяет обрабатывать все запросы на передачу данных асинхронно и независимо.

RAID 7 – зарегистрированная торговая марка компании Storage Computer Corporation

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

Преимущества:

· очень высокая скорость передачи данных и высокая скорость обработки запросов (в 1,5…6 раз выше других стандартных уровней RAID);

· хорошая масштабируемость;

· значительно возросшая (благодаря наличию кэша) скорость чтения данных небольшого объема;

· отсутствие необходимости в дополнительной передаче данных для вычисления четности.

Недостатки:

· собственность одной компании;

· сложность реализации;

· очень высокая стоимость на единицу объема;

· не может обслуживаться пользователем;

· необходимость использования блока бесперебойного питания для предотвращения потери данных из кэш-памяти;

· короткий гарантийный срок.

RAID 1 Enhanced (RAID 1E) комбинирует mirroring и data striping. Эта смесь уровней 0 и 1 устроена следующим образом. Данные в ряду распределяются точь-в-точь так, как в RAID 0. То есть ряд данных не имеет никакой избыточности. Следующий ряд блоков данных копирует предыдущий со сдвигом на один блок. Таким образом как и в стандартном режиме RAID 1 каждый блок данных имеет зеркальную копию на одном из дисков, поэтому полезный объем массива равен половине суммарного объема входящих в массив жестких дисков. Для работы RAID 1E требуется объединение трех или более дисков.

RAID 5 Enhanced (RAID 5E). Это то же самое что и RAID5, только со встроенным в массив резервным диском spare drive. Это встраивание производится следующим образом: на всех дисках массива оставляется свободным 1/N часть пространства, которая при отказе одного из дисков используется в качестве горячего резерва. За счет этого RAID5E демонстрирует наряду с надежностью лучшую производительность, так как чтение/запись производится параллельно с бОльшего числа накопителей одновременно и spare drive не простаивает, как в RAID5. Полезный объем логического тома вычисляется по формуле N-2.

RAID 5E Enhanced (RAID 5EE) подобен уровню RAID level-5E, но он имеет более эффективное распределение spare drive и, как следствие, - более быстрое время восстановления. Как и уровень RAID5E, этот уровень RAID распределяет в рядах блоки данных и контрольных сумм. Но он также распределяет и свободные блоки spare drive, а не просто оставляет под эти цели часть объема диска. Это позволяет уменьшить время, необходимое на реконструкцию целостности тома RAID5EE. Входящий в том резервный диск нельзя делить с другими томами - как и в предыдущем случае. Том RAID 5EE строится минимум на четырех физических дисках. Полезный объем логического тома вычисляется по формуле N-2.

RAID 10.
Суть этого уровня в том, что диски массива объединяются парами в "зеркала" (RAID 1), а затем все эти зеркальные пары в свою очередь объединяются в общий массив с чередованием (RAID 0). Именно поэтому его иногда обозначают как RAID 1+0. Важный момент - в RAID 10 можно объединить только четное количество дисков (минимум - 4, максимум - 16). Достоинства: от "зеркала" наследуется надежность, от "нуля" - производительность как на чтение, так и на запись.

RAID 1Е0.
Этот уровень реализуется так: мы создаем "нулевой" массив из массивов RAID1E. Следовательно, общее количество дисков должно быть кратно трем: минимум три и максимум - шестьдесят! Преимущество в скорости при этом мы вряд ли получим, а сложность реализации может неблагоприятно отразиться на надежности. Главное достоинство - возможность объединить в один массив очень большое (до 60) количество дисков.

RAID 1+0, RAID 3+0, RAID 5+0 - фактически это массив RAID 0, но вместо дисков используются массивы RAID 1, 3, 5 соответственно.


Понравилась статья? Добавь ее в закладку (CTRL+D) и не забудь поделиться с друзьями:  



double arrow
Сейчас читают про: