WikiSort.ru - Не сортированное

ПОИСК ПО САЙТУ | о проекте

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

История

Аббревиатура «RAID» изначально расшифровывалась как «Redundant Array of Inexpensive Disks» («избыточный (резервный) массив недорогих дисков», так как они были гораздо дешевле дисков SLED (Single Large Expensive Drive)). Именно так был представлен RAID его создателями Петтерсоном (David A. Patterson), Гибсоном (Garth A. Gibson) и Катцом (Randy H. Katz) в 1987 году[1]. Со временем «RAID» стали расшифровывать как «Redundant Array of Independent Disks» («избыточный (резервный) массив независимых дисков»), потому что для массивов приходилось использовать и дорогое оборудование (под недорогими дисками подразумевались диски для ПЭВМ).

Калифорнийский университет в Беркли представил[1] следующие уровни спецификации RAID, которые были приняты как стандарт де-факто:

  • RAID 1 — зеркальный дисковый массив;
  • RAID 2 — зарезервирован для массивов, которые применяют код Хемминга;
  • RAID 3 и RAID 4 — дисковые массивы с чередованием и выделенным диском чётности;
  • RAID 5 — дисковый массив с чередованием и отсутствием выделенного диска чётности.

В современных RAID-контроллерах предоставлены дополнительные уровни спецификации RAID:

  • RAID 0 — дисковый массив повышенной производительности с чередованием, без отказоустойчивости. Строго говоря, RAID-массивом не является, поскольку избыточность (redundancy) в нём отсутствует;
  • RAID 6 — дисковый массив с чередованием, использующий две контрольные суммы, вычисляемые двумя независимыми способами;
  • RAID 10 — массив RAID 0, построенный из массивов RAID 1;
  • RAID 01 — массив RAID 1, построенный из массивов RAID 0 (имеет низкую отказоустойчивость);
  • RAID 1E (зеркало из трёх устройств), RAID 50 (массив RAID 0 из массивов RAID 5), RAID 05 (RAID 5 из RAID 0), RAID 60 (RAID 0 из RAID 6) и различные другие.

Аппаратный RAID-контроллер может иметь дополнительные функции и одновременно поддерживать несколько RAID-массивов различных уровней. При этом контроллер, встроенный в материнскую плату, в настройках BIOS имеет всего два состояния (включён или отключён), поэтому новый жёсткий диск, подключённый в незадействованный разъём контроллера при активированном режиме RAID, может игнорироваться системой, пока он не будет ассоциирован как ещё один RAID-массив типа JBOD (spanned), состоящий из одного диска.

Уровни RAID, реализуемые средствами файловой системы ZFS:

  • RAID-Z — один избыточный диск;
  • RAID-Z2 — два избыточных диска;
  • RAID-Z3 — три избыточных диска.

Базовые уровни RAID

RAID 0

Схема RAID 0

RAID 0 (striping — «чередование») — дисковый массив из двух или более жёстких дисков без резервирования. Информация разбивается на блоки данных ( ) фиксированной длины и записывается на оба/несколько дисков поочередно, то есть один блок на первый диск, а второй блок на второй диск соответственно.

(+): Скорость считывания файлов увеличивается в n раз, где n — количество дисков. При этом такая оптимальная производительность достигается только для больших запросов, когда фрагменты файла находятся на каждом из дисков.

(-): Увеличивается вероятность потери данных: если вероятность отказа 1 диска равна p, то вероятность выхода из строя массива RAID 0 из двух дисков равна 2p-p*p. Таким образом, если вероятность отказа одного диска за год равна 1 %, то вероятность отказа массива RAID0 из двух дисков составляет 1,99 %, то есть практически в два раза больше.

RAID 1

Два диска — минимальное количество для построения «зеркального» массива
Схема RAID 1

RAID 1 (mirroring — «зеркалирование») — массив из двух (или более) дисков, являющихся полными копиями друг друга. Не следует путать с массивами RAID 1+0 (RAID 10), RAID 0+1 (RAID 01), в которых используются более сложные механизмы зеркалирования.

(+): Обеспечивает приемлемую скорость записи (такую же, как и без дублирования) и выигрыш по скорости чтения при распараллеливании запросов[2].

(+): Имеет высокую надёжность — работает до тех пор, пока функционирует хотя бы один диск в массиве. Вероятность выхода из строя сразу двух дисков равна произведению вероятностей отказа каждого диска, то есть значительно ниже вероятности выхода из строя отдельного диска. На практике при выходе из строя одного из дисков следует срочно принимать меры — вновь восстанавливать избыточность. Для этого с любым уровнем RAID (кроме нулевого) рекомендуют использовать диски горячего резерва.

(-): Недостаток RAID 1 в том, что по цене двух (и более) жестких дисков пользователь фактически получает объём лишь одного.

RAID 2

Массивы такого типа основаны на использовании кода Хэмминга. Диски делятся на две группы: для данных и для кодов коррекции ошибок, причём если данные хранятся на дисках, то для хранения кодов коррекции необходимо дисков. Суммарное количество дисков при этом будет равняться . Данные распределяются по дискам, предназначенным для хранения информации, так же, как и в RAID 0, то есть они разбиваются на небольшие блоки по числу дисков. Оставшиеся диски хранят коды коррекции ошибок, по которым в случае выхода какого-либо жёсткого диска из строя возможно восстановление информации. Метод Хэмминга давно применяется в памяти типа ECC и позволяет на лету исправлять однократные и обнаруживать двукратные ошибки.

Достоинством массива RAID 2 является повышение скорости дисковых операций по сравнению с производительностью одного диска.

Недостатком массива RAID 2 является то, что минимальное количество дисков, при котором имеет смысл его использовать — 7, только начиная с этого количества для него требуется меньше дисков, чем для RAID 1 (4 диска с данными, 3 диска с кодами коррекции ошибок), в дальнейшем избыточность уменьшается по экспоненте.

Расчётное количество дисков для организации RAID 2
Схема RAID 2

RAID 3

Схема RAID 3

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

Отличия RAID 3 от RAID 2: невозможность коррекции ошибок на лету.

Достоинства:

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

Недостатки:

  • массив этого типа хорош только для однозадачной работы с большими файлами, так как время доступа к отдельному сектору, разбитому по дискам, равно максимальному из интервалов доступа к секторам каждого из дисков. Для блоков малого размера время доступа намного больше времени чтения.
  • большая нагрузка на контрольный диск, и, как следствие, его надёжность сильно падает по сравнению с дисками, хранящими данные.

RAID 4

Схема RAID 4

RAID 4 похож на RAID 3, но отличается от него тем, что данные разбиваются на блоки, а не на байты. Таким образом, удалось отчасти «победить» проблему низкой скорости передачи данных небольшого объёма. Запись же производится медленно из-за того, что чётность для блока генерируется при записи и записывается на единственный диск.

Из широко распространённых систем хранения RAID-4 применяется на устройствах компании NetApp (NetApp FAS), где его недостатки успешно устранены за счет работы дисков в специальном режиме групповой записи, определяемом используемой на устройствах внутренней файловой системой WAFL.

RAID 5

Схема RAID 5

Основным недостатком уровней RAID от 2-го до 4-го является невозможность производить параллельные операции записи, так как для хранения информации о чётности используется отдельный контрольный диск. RAID 5 не имеет этого недостатка. Блоки данных и контрольные суммы циклически записываются на все диски массива, нет асимметричности конфигурации дисков. Под контрольными суммами подразумевается результат операции XOR (исключающее или). Xor обладает особенностью, которая даёт возможность заменить любой операнд результатом, и, применив алгоритм xor, получить в результате недостающий операнд. Например: a xor b = c (где a, b, c — три диска рейд-массива), в случае если a откажет, мы можем получить его, поставив на его место c и проведя xor между c и b: c xor b = a. Это применимо вне зависимости от количества операндов: a xor b xor c xor d = e. Если отказывает c, тогда e встаёт на его место и, проведя xor, в результате получаем c: a xor b xor e xor d = c. Этот метод по сути обеспечивает отказоустойчивость 5 версии. Для хранения результата xor требуется всего 1 диск, размер которого равен размеру любого другого диска в RAID.

Минимальное количество используемых дисков равно трём.

Достоинства

RAID 5 получил широкое распространение, в первую очередь благодаря своей экономичности. Объём дискового массива RAID 5 рассчитывается по формуле (n-1)*hddsize, где n — число дисков в массиве, а hddsize — размер диска (наименьшего, если диски имеют разный размер). Например, для массива из четырёх дисков по 80 гигабайт общий объём будет (4 − 1) * 80 = 240 гигабайт, то есть «потеряется» всего 25 % против 50 % RAID 10. И с увеличением количества дисков в массиве экономия (по сравнению с другими уровнями RAID, обладающими отказоустойчивостью) продолжает увеличиваться.

RAID 5 обеспечивает высокую скорость чтения — выигрыш достигается за счёт независимых потоков данных с нескольких дисков массива, которые могут обрабатываться параллельно.

Недостатки

Производительность RAID 5 заметно ниже на операциях типа Random Write (записи в произвольном порядке), при которых производительность падает на 10-25 % от производительности RAID 0 (или RAID 10), так как требует большего количества операций с дисками (каждая операция записи, за исключением так называемых full-stripe write-ов, заменяется на контроллере RAID на четыре — две операции чтения и две операции записи).

При выходе из строя одного диска надёжность тома сразу снижается до уровня RAID 0 с соответствующим количеством дисков n-1 — то есть в n-1 раз ниже надёжности одного диска — данное состояние называется критическим (degrade или critical). Для возвращения массива к нормальной работе требуется длительный процесс восстановления, связанный с ощутимой потерей производительности и повышенным риском.

В ходе восстановления (rebuild или reconstruction) контроллер осуществляет длительное интенсивное чтение, которое может спровоцировать выход из строя ещё одного или нескольких дисков массива. Кроме того, в ходе чтения могут выявляться ранее не обнаруженные сбои чтения в массивах cold data (данных, к которым не обращаются при обычной работе массива, архивные и малоактивные данные), препятствующие восстановлению. Если до полного восстановления массива произойдет выход из строя, или возникнет невосстановимая ошибка чтения хотя бы на ещё одном диске, то массив разрушается и данные на нём восстановлению обычными методами не подлежат. Для предотвращения таких ситуаций в RAID-контроллерах может применяться анализ атрибутов S.M.A.R.T.

RAID 6

Схема RAID 6

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

Комбинированные уровни

Помимо базовых уровней RAID 0 — RAID 6, описанных в стандарте «Common RAID Disk Drive Format (DEF) standard», существуют комбинированные уровни с названиями вида «RAID α+β» или «RAID αβ», что обычно означает «RAID β, составленный из нескольких RAID α» (иногда производители интерпретируют это по-своему).

Например:

  • RAID 10 (или RAID 1+0) — это RAID 0, составленный из нескольких (или хотя бы двух) RAID 1 (зеркалированных пар).
  • RAID 51 — RAID 1, зеркалирующий два RAID 5 .

Комбинированные уровни наследуют как преимущества, так и недостатки своих «родителей»: появление чередования в уровне RAID 5+0 нисколько не добавляет ему надёжности, но зато положительно отражается на производительности. Уровень RAID 1+5, наверное, очень надёжный, но не самый быстрый и, к тому же, крайне неэкономичный: полезная ёмкость тома меньше половины суммарной ёмкости дисков.

RAID 01 (RAID 0+1)

Под RAID 0+1 может подразумеваться в основном два варианта:

  • два RAID 0 объединяются в RAID 1;
  • в массив объединяются четыре и более диска, и каждый блок данных записывается на два диска данного массива[3]; таким образом, при таком подходе, как и в «чистом» RAID 1, полезный объём массива составляет половину от суммарного объёма всех дисков (если это диски одинаковой ёмкости).

RAID 10 (RAID 1+0)

Схема архитектуры RAID 10

RAID 10 (RAID 1+0) — зеркалированный массив, данные в котором записываются последовательно на несколько дисков, как в RAID 0. Эта архитектура представляет собой массив типа RAID 0, сегментами которого вместо отдельных дисков являются массивы RAID 1. Соответственно, массив этого уровня должен содержать как минимум 4 диска (и всегда чётное количество). RAID 10 объединяет в себе высокую отказоустойчивость и производительность.

RAID 10 является достаточно надёжным вариантом для хранения данных в связи с тем, что весь массив RAID 10 будет выведен из строя только после выхода из строя всех накопителей в одном и том же массиве RAID 1. При одном вышедшем из строя накопителе, шанс выхода из строя второго в одном и том же массиве равен 1/3*100=33 %.

Для сравнения: RAID 0+1 выйдет из строя при двух накопителях, вышедших из строя в разных массивах. Шанс выхода из строя накопителя в соседнем массиве равен 2/3*100=66 %. Однако, так как массив RAID 0 с вышедшим из строя накопителем уже не используется, то оставшийся исправным накопитель в этом массиве можно исключить из расчёта, и получим шанс того, что следующий накопитель выведет из строя массив — 2/2*100=100 %.

Нестандартные уровни RAID

RAID 1E

Схема дискового массива RAID 1E в двух вариантах для 3, 4 и 5 устройств

RAID 1E (enhanced — усовершенствованный) — зеркало, способное работать на нечётном количестве устройств.

Существуют как минимум два разных алгоритма RAID 1E:

  • RAID 1E near (он же RAID 1E striped)[4];
  • RAID 1E interleaved[5].

В руководстве к вашему RAID-контроллеру может не указываться, какой именно тип RAID 1E (near или interleaved) он поддерживает[6]. Общим для них является то, что они хорошо подходят для создания массива из трёх дисковых устройств.

В RAID 1E near первый блок данных записывается на диск № 1 и на диск № 2 (полная копия, как при RAID 1). Следующий блок — на диск № 3 и диск № 4 (если диски закончились, например, диска № 4 в массиве нет, 3-й диск последний — контроллер возвращается к диску № 1 и переходит к следующей полоске).

В RAID 1E interleaved данные чередуются по полоскам: в первую полоску пишутся сами данные, во вторую — их копия. При переходе от одной полоски к другой увеличивается индекс устройства, с которого начинается запись. Таким образом, первый блок данных записывается на диск № 1 в первой полоске и на диск № 2 во второй полоске, второй блок данных — на диск № 2 в первой полоске и на диск № 3 во второй полоске и так далее.

Результирующая ёмкость массива с использованием RAID 1E составляет , где N — количество дисков в массиве, а S — ёмкость наименьшего из них.

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

1. Хорошая скорость передачи данных и обработки запросов.
2. В отличие от RAID 1 и RAID 10, реализована возможность организации зеркала на нечётном количестве устройств.

Недостатки:

1. Увеличение стоимости, поскольку доступна лишь половина суммарной ёмкости устройств.
2. В некоторых моделях контроллеров допускается отказ только одного диска, в связи с чем при чётном количестве дисков и отсутствии диска горячей замены предпочтительнее использовать RAID 10[5].

Минимальное количество дисков: 3 (при двух — неотличим от RAID 1).

RAID 7

RAID 7 — зарегистрированная торговая марка компании Storage Computer Corporation, отдельным уровнем RAID не является. Структура массива такова: на дисках хранятся данные, один диск используется для складирования блоков чётности. Запись на диски кэшируется с использованием оперативной памяти, сам массив требует обязательного ИБП; в случае перебоев с питанием происходит повреждение данных.

Число 7 в названии создаёт впечатление, что система чем-то превосходят «своих младших братьев» RAID 5 и 6, но математика RAID 7 не отличается от RAID 4, а кэш и батареи используются в RAID-контроллерах любых уровней (чем дороже контроллер, тем больше вероятность наличия этих компонент). Поэтому, хотя никто не отрицает, что RAID 7 обладает высокой надёжностью и скоростью работы, — это не промышленный стандарт, а скорее маркетинговый ход единственной компании-производителя таких устройств, и только эта компания осуществляет для них техническую поддержку.[7]

RAID-DP

Существует модификация RAID-6 компании NetApp — RAID-DP. Отличие от традиционного массива заключается в выделении под контрольные суммы двух отдельных дисков. Благодаря взаимодействию RAID-DP и файловой системы WAFL (все операции записи последовательны и производятся на свободное место) пропадает падение производительности как в сравнении с RAID-5, так и в сравнении с RAID-6.

Аппаратные RAID-контроллеры

Представляют собой плату расширения, либо размещаются вне сервера (например, в составе внешней дисковой подсистемы либо NAS).[8] Имеют собственный процессор, многие имеют кэш-память для ускорения работы. В устройства подороже опционально устанавливаются батареи (Battery Backup Unit, сокр. BBU, химические, либо конденсаторные) для сохранения данных в кэше в случае аварийного отключения электропитания. Конденсаторные батареи более современные, но более дорогие, поскольку дополнительно требуют наличия модуля энергонезависимой FLASH-памяти, куда при аварии будет копироваться кэш. Такие батареи не портятся со временем и, в отличие от химических, не требуют замены в течение срока службы сервера.[9]

Для подключения дисков контроллер может иметь внутренние, либо внешние порты, либо и те, и другие. Порты могут быть выполнены по различным стандартам (см. для примера список внутренних и внешних разъёмов SAS, а также SFF-8639).

Контроллеры различных производителей, как правило, не совместимы и не взаимозаменяемы между собой — это следует иметь в виду в случае выхода из строя платы контроллера. Информация о конфигурации RAID-массива хранится на дисках, но прочитать её, даже с полностью исправных дисков, и воссоздать массив сможет только контроллер того же производителя.[10] Для предотвращения подобных проблем существуют кластерные дисковые системы[11]. Программные RAID-массивы также лишены этого недостатка.

Дополнительные функции RAID-контроллеров

Многие RAID-контроллеры оснащены набором дополнительных функций:

  • «Горячая замена» (hot swap)
  • «Горячий резерв» (hot spare)
  • Проверка на стабильность.

Сравнение уровней RAID

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

(может соответствовать скорости записи RAID 5)

60 от 8, чётноеS * (N − 4)от 2 до 4 дисков***средняявысокаясредняя
61 от 8, чётноеS * (N − 2) / 2от 4 до N/2+2 дисков****высокаявысокаянизкаядвойная стоимость дискового пространства

* N — количество дисков в массиве, S — объём наименьшего диска[12][13][14][15].
** Информация не потеряется, если выйдут из строя диски в пределах разных зеркал.
*** Информация не потеряется, если выйдет из строя одинаковое кол-во дисков в разных stripe’ах.
**** Информация не потеряется, если выйдут из строя диски в пределах одного зеркала.
***** Информация потеряется, если одновременно выйдут из строя любые два соседних диска (либо первый с последним), иначе — не потеряется.


Программный RAID

Для реализации RAID можно применять не только аппаратные средства, но и полностью программные компоненты (драйверы). Например, в системах на ядре Linux поддержка существует непосредственно на уровне ядра. Управлять RAID-устройствами в Linux можно с помощью утилиты mdadm. Программный RAID имеет свои достоинства и недостатки. С одной стороны, он ничего не стоит (в отличие от аппаратных RAID-контроллеров, цена которых от $150). С другой стороны, программный RAID использует некоторое количество ресурсов центрального процессора.

Ядро Linux 2.6.28 (последнее из вышедших в 2008 году) поддерживает программные RAID следующих уровней: 0, 1, 4, 5, 6, 10. Реализация позволяет создавать RAID на отдельных разделах дисков, что аналогично описанному ниже Matrix RAID. Поддерживается загрузка с RAID.

ОС семейства Windows NT, такие как Windows NT 3.1/3.5/3.51/NT4/2000/XP/2003 изначально, с момента проектирования данного семейства, поддерживают программный RAID 0, RAID 1 и RAID 5 (см. Dynamic Disk). Более точно, Windows XP Pro поддерживает RAID 0. Поддержка RAID 1 и RAID 5 заблокирована разработчиками, но, тем не менее, может быть включена, путём редактирования системных бинарных файлов ОС, что запрещено лицензионным соглашением[16]. Windows 7 поддерживает программный RAID 0 и RAID 1, Windows Server 2003 — 0, 1 и 5. Windows XP Home не поддерживает RAID.

В ОС FreeBSD есть несколько реализаций программного RAID. Так, atacontrol, может как полностью строить программный RAID, так и может поддерживать полуаппаратный RAID на таких чипах, как ICH5R. Во FreeBSD, начиная с версии 5.0, дисковая подсистема управляется встроенным в ядро механизмом GEOM. GEOM предоставляет модульную дисковую структуру, благодаря которой родились такие модули как gstripe (RAID 0), gmirror (RAID 1), graid3 (RAID 3), gconcat (объединение нескольких дисков в единый дисковый раздел). Также существуют устаревшие классы ccd (RAID 0, RAID 1) и gvinum (менеджер логических томов vinum). Начиная с FreeBSD 7.2 поддерживается файловая система ZFS, в которой можно собирать следующие уровни RAID: 0, 1, 5, 6, а также комбинируемые уровни.

OpenSolaris и Solaris 10 используют Solaris Volume Manager, который поддерживает RAID 0, RAID 1, RAID 5 и любые их комбинации, как 1+0. Поддержка RAID 6 осуществляется в файловой системе ZFS.

Hybrid RAID

«Hybrid RAID» — это некоторые из обычных уровней RAID, но в сочетании с дополнительным ПО и SSD-дисками, которые используются как кэш для чтения. В результате производительность системы повышается, так как SSD обладают значительно лучшими скоростными характеристиками по сравнению с HDD. Существует несколько реализаций, например Crucial Adrenaline, либо некоторые контроллеры Adaptec бюджетного класса. На данный момент Hybrid RAID не рекомендуется использовать в серверах ввиду малого ресурса SSD-дисков, исключение составляют специальные серверные SSD-диски с повышенным ресурсом.

RAIDIX

RAIDIX — программа для создания систем хранения на основе имеющегося оборудования, разработка компании «РЭЙДИКС». Кроме стандартных уровней RAID, содержит несколько проприетарных, например, RAID 7.3 и RAID N+M, где второе число означает количество дисков, выделяемых для хранения контрольной информации (M — произвольное число)[17].

Matrix

Схема Intel Matrix RAID

Matrix RAID — это технология, реализованная фирмой Intel в южных мостах своих чипсетов, начиная с ICH6R. Эта технология не является новым уровнем RAID и не имеет аппаратной поддержки. Средства BIOS позволяют организовать несколько устройств в логический массив, дальнейшая обработка которого именно как RAID-массива, возлагается на драйвер. Технология позволяет организовывать на разных разделах дисков одновременно несколько массивов уровня RAID 1, RAID 0 и RAID 5[18]. Это позволяет для одних разделов выбрать повышенную надёжность, для других — высокую производительность.

Позднее, Intel объявила о переименовании технологии Matrix RAID в Intel Rapid Storage Technology (Intel RST)[19].

Список контроллеров, поддерживающих Intel RST[20]:

  • Intel PCHM SATA RAID/AHCI controller hub
  • Intel PCH SATA RAID/AHCI controller hub
  • Intel ICH10R/DO SATA RAID/AHCI controller hub
  • Intel ICH10D SATA AHCI controller hub
  • Intel ICH9M-E SATA AHCI/RAID controller hub
  • Intel ICH9M AHCI controller hub
  • Intel 82801IR I/O Controller Hub—RAID and AHCI
  • Intel 82801HEM I/O Controller Hub—RAID and AHCI
  • Intel 82801HBM I/O Controller Hub—AHCI only
  • Intel 82801HR/HH/HO I/O Controller Hub—RAID and AHCI
  • Intel 631xESB/632xESB I/O Controller Hub—RAID and AHCI
  • Intel 82801GHM I/O Controller Hub—RAID only
  • Intel 82801GBM I/O Controller Hub—AHCI only
  • Intel 82801GR/GH I/O Controller Hub—RAID and AHCI

Дальнейшее развитие идеи RAID

Синий разъём PCI-X на материнской плате сервера FSC Primergy TX200 S2 специально предназначен для платы ноль-канального RAID (zero-channel RAID, ZCR). Установлен MegaRAID 320-0 Zero Channel RAID Controler фирмы LSI)[21]

Идея RAID-массивов — в объединении дисков, каждый из которых рассматривается как набор секторов, и в результате драйвер файловой системы «видит» как бы единый диск и работает с ним, не обращая внимания на его внутреннюю структуру. Однако, можно добиться существенного повышения производительности и надёжности дисковой системы, если драйвер файловой системы будет «знать» о том, что работает не с одним диском, а с набором дисков.

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

Размещение файлов по принципу «каждый файл целиком находится на одном диске» сложным/неоднозначным образом влияет на производительность дисковой системы. Для мелких файлов латентность (время позиционирования головки над нужным треком + время ожидания прихода нужного сектора под головку) важнее, чем время собственно чтения/записи; поэтому если мелкий файл целиком находится на одном диске, доступ к нему будет быстрее, чем если он разнесён на два диска (структура RAID-массивов такова, что мелкий файл не может оказаться на трёх и более дисках). Для крупных файлов размещение строго на одном диске может оказаться хуже, чем размещение на нескольких дисках; однако, это проявится только если обмен данными производится большими блоками; либо если к файлу делается много мелких обращений в асинхронном режиме, что позволяет работать сразу со всеми дисками, на которых размещён этот файл.

Интересные факты

Годовая вероятность отказа дискового массива RAID 5 из 3 дисков WD Caviar Blue = 0,05 %[22].

Недостатки RAID

Коррелированные сбои

На практике накопители часто имеют одинаковый возраст (с аналогичным износом) и подвергаются одинаковой среде. Поскольку многие отказы дисков обусловлены механическими проблемами (которые более вероятны на более старых приводах), это нарушает предположения о независимой одинаковой скорости отказа между дисками; сбои на самом деле статистически коррелированы. На практике шансы на второй отказ перед первым восстановлением (причиной потери данных) выше, чем вероятность случайных сбоев. При изучении около 100 000 дисков вероятность того, что два диска в одном кластере провалится в течение одного часа, была в четыре раза больше, чем прогнозировалось экспоненциальным статистическим распределением, которое характеризует процессы, в которых события происходят непрерывно и независимо с постоянной средней скоростью. Вероятность двух неудач за тот же 10-часовой период была вдвое больше, чем прогнозировалось экспоненциальным распределением.

Невосстановимые ошибки чтения при восстановлении

Неустранимые ошибки чтения (URE) присутствуют как сбои чтения сектора, также известные как ошибки скрытого сектора (LSE). Соответствующая оценка медиа-оценки, скорость невосстановимой битовой ошибки (UBE), как правило, гарантируется быть менее одного бита в 1015 для дисков корпоративного класса (SCSI, FC, SAS или SATA) и менее одного бита в 1014 для настольных компьютеров, (IDE / ATA / PATA или SATA). Увеличение емкости дисков и больших экземпляров RAID 5 привело к тому, что максимальная частота ошибок была недостаточной для обеспечения успешного восстановления из-за высокой вероятности такой ошибки, возникающей на одном или нескольких остальных дисках во время восстановления RAID-набора. При восстановлении, основанные на таких схемах, как RAID 5, особенно подвержены воздействию URE, поскольку они влияют не только на сектор, в котором они происходят, но и на реконструированные блоки, использующие этот сектор для вычисления четности. Таким образом, URE во время восстановления RAID 5 обычно приводит к полной ошибке восстановления.

Схемы, основанные на четности с двойной защитой, такие как RAID 6, пытаются решить эту проблему, предоставляя избыточность, которая позволяет сбой при двойном диске; как недостаток, такие схемы страдают от повышенного штрафа за запись — количества обращений к носителям информации во время одной операции записи. Схемы, дублирующие (зеркальные) данные в режиме от привода к диску, такие как RAID 1 и RAID 10, имеют меньший риск от URE, чем те, которые используют вычисления четности или зеркалирование между полосатыми наборами. Очистка данных, как фоновый процесс, может использоваться для обнаружения и восстановления из URE, что эффективно снижает риск их возникновения во время перестроек RAID и приводит к сбоям с двойным приводом. Восстановление URE включает переназначение затронутых базовых сегментов диска, используя пул переназначения сектора диска; в случае обнаружения URE во время фоновой очистки, избыточность данных, предоставляемая полностью работоспособным RAID-массивом, позволяет восстановить и переписать недостающие данные в переназначенный сектор.

Увеличение времени восстановления и вероятности отказа

Емкость накопителя выросла гораздо быстрее, чем скорость передачи, а частота ошибок лишь немного снизилась. Таким образом, накопители большей емкости могут занимать часы, если не дни для восстановления, в течение которых могут произойти сбои других накопителей или все же необнаруженные ошибки чтения могут возникнуть. Время восстановления также ограничено, если весь массив все еще работает при уменьшенной емкости. Учитывая массив с одним избыточным диском (который относится к уровням RAID 3, 4 и 5 и к «классическому» RAID с двумя дисками 1), второй сбой накопителя может привести к полному сбою массива. Несмотря на то, что среднее время между отдельными дисками (MTBF) увеличилось с течением времени, это увеличение не ускорилось с увеличением емкости накопителей. Время восстановления массива после отказа одного диска, а также вероятность второго сбоя во время восстановления увеличилось с течением времени.

Некоторые комментаторы заявили, что RAID 6 — это всего лишь «групповая помощь» в этом отношении, потому что это лишь немного пошатнуло проблему в будущем. Однако, согласно исследованию 2006 года NetApp от Berriman и др., Вероятность сбоя уменьшается примерно в 3 800 (относительно RAID 5) для правильной реализации RAID 6 даже при использовании товарных дисков. Тем не менее, если наблюдаемые в настоящее время тенденции в области технологий остаются неизменными, в 2019 году массив RAID 6 будет иметь одинаковую вероятность выхода из строя, так как его RAID 5-аналог был в 2010 году.

Схемы зеркалирования, такие как RAID 10, имеют ограниченное время восстановления, так как они требуют копии одного отказавшего диска по сравнению с такими схемами четности, как RAID 6, для которых требуется копирование всех блоков дисков в наборе массивов. Трехмерные схемы четности или тройное зеркалирование были предложены в качестве одного из подходов для повышения устойчивости к сбою дополнительного диска в течение этого большого времени восстановления.

Атомность: в том числе несоответствие четности из-за сбоев системы

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

Это немного понятный и редко упоминаемый режим отказа для резервных систем хранения, которые не используют транзакционные функции. Исследователь базы данных Джим Грей написал «Обновление на месте — ядовитое яблоко» в первые дни коммерциализации реляционных баз данных.

Надежность кэша записи

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

См. также

  • JBOD — дисковый массив с последовательным распределением дискового пространства по дискам.
  • NAS — внешнее сетевое хранилище данных (возможно использование RAID).

Примечания

  1. 1 2 David A. Patterson, Garth Gibson, and Randy H. Katz. A Case for Redundant Arrays of Inexpensive Disks (RAID)
  2. R.LAB. RAID-массивы — надёжность и производительность. RAID 1
  3. Выбираем уровень RAID
  4. Microsemi. Choosing the Right RAID Configurations: RAID 1E
  5. 1 2 Adaptec Inc. Решения для хранения данных. Какой уровень RAID мне выбрать? — RAID 1E
  6. ReclaiMe Free RAID Recovery — RAID 1E types
  7. The PC Guide — RAID Level 7
  8. IXBT. Выбери свой RAID контроллер. 01.10.1999
  9. Всё, что вы хотели узнать о RAID-контроллерах, но лень было искать. 06.10.2016
  10. Habr, 24.02.2012. Что делать, если вышел из строя RAID-контроллер?
  11. 3DNews — Daily Digital Digest, 12.12.2001. FAQ по практической реализации RAID
  12. RAID 0, RAID 1, RAID 5, RAID6, RAID 10 или что такое уровни RAID?
  13. Dynamic disk introduction — RAID levels
  14. RAID Array and Server: Hardware and Service Comparison
  15. Summary Comparison of RAID Levels
  16. Создаём программный массив RAID 5 под Windows XP
  17. CNews. «Рэйдикс» и Western Digital: что умеет «голливудская» СХД
  18. Intel Rapid Storage Technology (Intel RST). RAID 0, 1, 5, 10, Matrix RAID, RAID-Ready
  19. Intel Rapid Storage Technology (Intel RST). Product overview
  20. Supported Intel Chipsets and Controller Hubs
  21. LSI MegaRAID 320-0 Zero Channel RAID Controler User’s Guide (англ.)
  22. Формула надёжности RAID (недоступная ссылка). Проверено 14 сентября 2012. Архивировано 24 марта 2013 года.

Ссылки

Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".

Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.

Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .




Текст в блоке "Читать" взят с сайта "Википедия" и доступен по лицензии Creative Commons Attribution-ShareAlike; в отдельных случаях могут действовать дополнительные условия.

Другой контент может иметь иную лицензию. Перед использованием материалов сайта WikiSort.ru внимательно изучите правила лицензирования конкретных элементов наполнения сайта.

2019-2024
WikiSort.ru - проект по пересортировке и дополнению контента Википедии