Открыть сервис

RAID 6

RAID 6 (Redundant Array of Independent Disks Level 6, избыточный массив независимых дисков уровня 6) — это стандарт организации логических дисковых массивов, обеспечивающий отказоустойчивость за счёт хранения двух независимых блоков контрольных сумм (чётности) для каждого блока данных. RAID 6 позволяет массиву сохранять работоспособность и целостность данных при одновременном выходе из строя любых двух физических дисков. Относится к классу массивов с избыточностью и является развитием технологии RAID 5.

История и развитие

Технология RAID была впервые описана в 1988 году в статье Дэвида Паттерсона, Гарта Гибсона и Рэнди Каца «A Case for Redundant Arrays of Inexpensive Disks» (UC Berkeley). Первоначально были определены пять уровней (RAID 1–5). RAID 6 не входил в первоначальную спецификацию и был разработан позднее как ответ на рост ёмкости жёстких дисков и увеличение времени восстановления массивов RAID 5.

В 1990-х годах, с распространением дисков большой ёмкости (более 1 ТБ), стало очевидно, что при отказе одного диска в RAID 5 время реконструкции массива может составлять часы или даже дни. За это время возрастает вероятность отказа второго диска, что приводило к необратимой потере данных. RAID 6 решил эту проблему, добавив вторую контрольную сумму.

Промышленные реализации RAID 6 появились в середине 1990-х годов в системах хранения данных (СХД) компаний EMC, IBM, NetApp и других. В 2002 году стандарт RAID 6 был формализован в спецификации Storage Networking Industry Association (SNIA). С начала 2010-х годов RAID 6 стал стандартом де-факто для корпоративных систем хранения данных, где критична сохранность информации.

Принцип работы

RAID 6 использует два типа контрольных сумм, вычисляемых по разным алгоритмам. Данные и контрольные суммы распределяются по всем дискам массива (страйпинг с чётностью). Размер блока (strip size) обычно составляет от 64 КБ до 1 МБ.

Алгоритмы вычисления чётности

Существует несколько алгоритмов для реализации RAID 6, наиболее распространённые:

Запись данных

При записи данных контроллер вычисляет обе контрольные суммы. Для минимизации операций ввода-вывода используется техника «чтение-модификация-запись» (read-modify-write): считываются старые данные и старые контрольные суммы, вычисляются новые значения, и записываются только изменённые блоки и новые контрольные суммы. Однако в RAID 6 эта операция сложнее, чем в RAID 5, так как требует вычисления двух чётностей.

Чтение данных

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

Восстановление (Rebuild)

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

Ключевые характеристики

ПараметрЗначение
Минимальное количество дисков4
Максимальное количество дисковТеоретически не ограничено, практически — 16–32 (ограничение контроллера)
Эффективная ёмкостьN-2 диска (где N — общее количество дисков)
ОтказоустойчивостьДо 2 дисков одновременно
Скорость чтенияВысокая (N-2 потоков)
Скорость записиСредняя (из-за вычисления двух чётностей, ниже, чем у RAID 5 и RAID 10)
Производительность при деградацииСнижается (требуется вычисление данных на лету)
Потери дискового пространства2 диска (или ~20–40% от общей ёмкости)

Преимущества и недостатки

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

Недостатки

Применение

RAID 6 применяется в тех областях, где надёжность хранения данных является приоритетом, а высокая скорость записи не критична:

Сравнение с другими уровнями RAID

ХарактеристикаRAID 0RAID 1RAID 5RAID 6RAID 10
ОтказоустойчивостьНет1 диск1 диск2 диска1 диск (в каждой зеркальной паре)
Минимальное число дисков22344
Эффективная ёмкостьNN/2N-1N-2N/2
Скорость записиОчень высокаяСредняяСредняяНизкаяВысокая
Скорость чтенияОчень высокаяВысокаяВысокаяВысокаяОчень высокая
Потери пространства0%50%1 диск2 диска50%

RAID 6 занимает нишу между RAID 5 (более быстрый, но менее надёжный) и RAID 10 (более быстрый, но с большими потерями дискового пространства).

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

Источники

  1. Patterson, D. A., Gibson, G., & Katz, R. H. (1988). A case for redundant arrays of inexpensive disks (RAID). Proceedings of the 1988 ACM SIGMOD international conference on Management of data.
  2. SNIA (Storage Networking Industry Association). (2002). Common RAID Disk Drive Format (DDF) Standard.
  3. Chen, P. M., Lee, E. K., Gibson, G. A., Katz, R. H., & Patterson, D. A. (1994). RAID: High-performance, reliable secondary storage. ACM Computing Surveys.
  4. Plank, J. S. (1997). A tutorial on Reed-Solomon coding for fault-tolerance in RAID-like systems. Software: Practice and Experience.
  5. Corbett, P., & Park, J. (1996). Row-diagonal parity for double disk failure correction. Proceedings of the 3rd USENIX Conference on File and Storage Technologies (FAST).

BFOmetr — база данных и аналитика по компаниям России.

На главную BFOmetr →