Массивы дисков в RAID0, RAID1, RAID5, RAID10 и прочих

Тэги: raid ssd hdd kvm выде

Логический диск в настольном ПК - это, зачастую, физический диск, разделенный на несколько логических. RAID - это процесс наоборот - несколько физических дисков (на нашем хостинге в подавляющем большинстве это специализированные middle-intensive SSD, корпоративного сегмента) объединяются в 1 логический с помощью специального ПО (программный рейд) или специального оборудования, так называемого контроллера (рейд-контроллера)

Как RAID-массивы формируются. Аппаратный рейд и программный рейд:

  1. Аппаратный RAID – формируется с помощью отдельного контроллера с собственным процессором и кэширующей памятью, полностью забирающий на себя выполнение всех дисковых операций. Наиболее затратный, однако, самый производительный и надежный вариант для использования.
  2. Программный RAID-массивы - наименее затратный вариант, но и наименее производительный. Массив создается средствами операционной системы, вся нагрузка по обработке данных «ложится на плечи» центрального процессора.
  3. Интегрированный аппаратный RAID (еще его часто называют Fake-RAID) — микрочип, установленный на материнскую плату, который берет на себя часть функционала аппаратного RAID-контроллера, работая в паре с центральным процессором. Этот подход работает чуть быстрее, чем программный RAID, но надежность у такого массива оставляет желать лучшего.
"Для чего все эти сложности и зачем столько вариантов?" возникает закономерный вопрос. Всё достаточно просто: смысл RAID - обеспечивать более высокую производительность и более высокую стабильность дисковой подсистемы такой сложной инфраструктуры, как выделенный сервер.

Какие бывают уровни RAID

По сути, RAID это связка из нескольких дисковых накопителей, от конфигурации которых зависит скорость работы, безопасность сервера и размещенных на нем данных клиента. Далее приводится список наиболее популярных типов RAID (так называемые "уровни" рейд-массивов) и в конце сравнительная таблица по основным типам. Жирным текстом выделены наиболее популярные (ввиду соотношения цена - достигнутые цели) уровни RAID
  1. RAID 0 (Stripping) используют в случае, когда нужно существенно увеличить производительность работы дисковой подсистемы. Данный вид рейд массива хотя и не обеспечивает надежность хранения информации, но широко используется на компьютерных машинах. Суть работы – информация разбивается на блоки, каждый блок записывается на отдельный диск. Данный массив применяется там, где важна скорость передачи больших объемов информации.

  2. RAID 1 (Mirrored disk) – данный рейд с высоким уровнем надежности, при котором данные полностью дублируются. В этом случае два диска вмещают одинаковую иформацию, при этом они являются одним логическим диском. Если один из дисков ломается, другой заменяет его, выполняя все функции. Данный рейд повышает скорость уровня чтения информации, потому что функция чтения может происходить одновременно с обеих дисков.

  3. RAID 2 – резервирование данных с помощью кода Хэмминга для коррекции ошибок. Данные, которые записываются, формируются на основе слов. Размер слова соответствует количеству дисков для записи информации в рейде. Данный вид массива дает возможность не только исправлять конкретные одиночные ошибки, но и выявлять двойные. Хотя сам по себе рейд является самым избыточным изо всех видов с кодами коррекции. RAID 2 редко используется по сравнению с другими, в связи с плохой обработкой большого количества запросов.

  4. RAID 3 – массив отказоустойчивости, который имеет один дополнительный диск, на него записываются данные, к тому же осуществляется параллельный ввод/вывод. Однако, данный рейд менее избыточен по сравнению с предыдущим и имеет высокую производительность. Достоинство RAID 3 – быстрое восстановление информации в случаи сбоев на сервере.

  5. RAID 4 в некоторых моментах схож с  RAID 3, но данный рейд имеет большой размер блока записываемых данных. Массив повышает производительность передачи файлов малого объема. Недостаток: не обеспечивается высокая скорость передачи больших файлов, сложность восстановления информации при сбои сервера. Данный массив хорошое решение для файловых серверов, так как информация в них считывается и намного реже записывается.

  6. Наиболее распространенный массив RAID 5, для работы которого нужно три и больше дисков. Он использует все диски кроме одного, например, если есть 4 диска, то используются по объему 3. Данный вид массива считается самым экономным. В отличии от RAID 3 имеет большой объем логических блоков для хранения данных, а также позволяет проводить параллельные операции записи. Если из строя выходит один из дисков, данные не теряются, но его следует заменить. Данный рейд используют для многого количества задач, производительность повышают с добавлением дополнительных дисков.

  7. RAID 6 — похож на RAID 5, но имеет более высокую степень надёжности — два диска данных и два диска контроля чётности. Основан на кодах Рида — Соломона и обеспечивает работоспособность после одновременного выхода из строя любых двух дисков. Обычно использование RAID-6 вызывает примерно 10-15 % падение производительности дисковой группы, относительно RAID 5, что вызвано бо́льшим объёмом работы для контроллера (более сложный алгоритм расчёта контрольных сумм), а также необходимостью читать и перезаписывать больше дисковых блоков при записи каждого блока

  8. RAID 10 (1+0) – пример комбинации уровней, который соединил в себе достоинства RAID 1 и RAID 0. По сути, это несколько RAID 0, которые дублируются. Данный массив более шустрый и отказоустойчивый, но все равно требует большей избыточности. Весомый минус массива – высокая стоимость.

  9. RAID 50 – комбинация нескольких RAID 5, которые чередуются. Довольно экономичное решение, которое подойдет для средних и больших компаний, массив имеет повышенный параметр отказоустойчивости.

  10. Hybrid RAID – сочетание нескольких обычных уровней  RAID, но с использованием дополнительного ПО и SSD дисков, которые используют как кэш для чтения данных. Данная система значительно повышает производительность, благодаря ССД, которые отличаются лучшими характеристиками скорости . Замечательно подходит данный массив для файловых серверов и виртуальных вычислительных машин.

Таблица сравнения уровней RAID


Уровень Количество
дисков
Эффективная
ёмкость*
Допустимое количество
вышедших из строя дисков
Надёжность Скорость
чтения
Скорость
записи
Примечание
RAID 0 от 2 S * N нет низкая высокая высокая полная потеря данных при выходе
из строя любого из дисков!
RAID 1 от 2 S * N / 2 N/2 дисков высокая высокая средняя N-я стоимость дискового пространства
RAID 1+0 (10) от 4, чётное S * N / 2 от 1 до N/2 дисков** средняя высокая высокая двойная стоимость дискового пространства
RAID 5 от 3 S * (N − 1) 1 диск средняя высокая средняя самое распространённое решение
RAID 5+0 (50) от 6, чётное S * (N − 2) от 1 до 2 дисков*** средняя высокая высокая
RAID 6 от 4 S * (N − 2) 2 диска высокая высокая низкая скорость записи в зависимости от реализации(может соответствовать скорости записи RAID 5)
RAID 6+0 (60) от 8, чётное S * (N − 4) от 2 до 4 дисков*** средняя высокая средняя

* N — количество дисков в массиве, S — объём наименьшего диска
** Информация не потеряется, если выйдут из строя диски в пределах разных зеркал
*** Информация не потеряется, если выйдет из строя одинаковое кол-во дисков в разных stripe’ах
**** Информация не потеряется, если выйдут из строя диски в пределах одного зеркала
***** Информация потеряется, если одновременно выйдут из строя любые два соседних диска (либо первый с последним), иначе — не потеряется.
Массивы дисков в RAID0, RAID1, RAID5, RAID10 и прочих