Введение в RAID: RAID-3






В RAID-3 данные на уровне байт разделяются между несколькими дисками, при этом вычисляются данные для контроля чётности и сохраняются на отдельном диске.



На картинке ниже (взято с Википедии, автор — Cburnett) проиллюстрирован принцип записи данных на четырёхдисковый массив RAID-3.

В приведённом выше примере массив использует четыре диска для хранения данных, при этом четвёртый диск используется исключительно для хранения информации чётности. Когда на запись поступает фрагмент данных «A», он распределяется между дисками следующим образом. Байт A1 записывается на Disk 0, байт A2 — на Disk 1, байт A3 — на Disk 2, после чего вычисляется чётность записанных байт и результат вычисления Ap (1-3) записывается на Disk 3. Этот процесс будет повторяться до тех пор, пока вся порция данных «A» не будет записана. Обратите внимание, что для работы массива RAID-3 необходимо минимум три диска: два для записи данных и один для хранения информации о чётности данных.

RAID-3 обладает высокой производительностью при том, что сохраняет информацию о чётности, что даёт более высокий уровень надёжности хранения данных по сравнению с RAID-0. Однако конфигурация RAID-3 имеет и свои не очень приятные особенности.

RAID-3 не может одновременно обрабатывать несколько запросов. Это происходит из-за того, что распределяясь между дисками, части данных находятся физически в одних и тех же местах на каждом из дисков, а это в свою очередь означает что головки дисков должны перемещаться синхронно при считывании одного куска данных. Из этого следует, что при обработке запроса на считывание блока данных «A» все диски будут заняты считыванием частей этого блока и возвращением результата контроллеру. Пока операция считывания блока «А» не будет завершена, диски не смогут обработать другой запрос, на считывание блока «B».

Ёмкость массива RAID-3 вычисляется следующим образом:

Это означает, что общая ёмкость массива RAID 3 ограничена ёмкостью диска минимального объёма (в RAID-3 можно использовать диски разного объёма) умноженной на общее количество дисков в массиве, минус один. «Минус один» — это выделенный диск (parity-диск) для хранения информации о чётности данных.

RAID-3 обладает хорошей производительностью, почти сравнимой с производительностью RAID-0 за вычетом времени и других ресурсов, требуемых на вычисление (выполняются контроллером) и сохранение данных чётности. Однако, если вы потеряете parity-диск, ничего страшного не случится, поскольку все данные останутся на дисках с данными. Если же потеряете один из дисков с данными — тоже ничего страшного, поскольку используя parity-диск вы сможете восстановить утерянные данные на одном из дисков. Таким образом, RAID-3 предоставляет производительность, почти сравнимую с RAID-0, при этом увеличивая надёжность хранения данных.

На сегодняшний день RAID-3 малопопулярен, хотя время от времени всё ещё встречается его применение. RAID-3 может использоваться там, где использование RAID-0 совершенно недопустимо ввиду ненадёжности хранения данных, но где пропускная способность RAID-3 вполне подходит.

Подытожим основные моменты, присущие RAID-3:

  • плюсы:
    • высокая надёжность хранения данных (вы не потеряете данные, если один диск из массива выйдет из строя);
    • высокая скорость чтения;
    • приемлемая скорость записи;
  • минусы:
    • все диски массива должны работать синхронно, что не даёт возможности обрабатывать одновременно более одного запроса;
  • минимальное количество дисков в массиве: 3.

Источник: Linux-Mag.Com