Уровень RAID 10 используется там, где требуется безупречная надежность в сочетании с исключительной производительностью. В последние годы появились новые разновидности (мутации) этого классического уровня, имеющие схожие с ним организацию и характеристики. В этой статье мы сравним и обсудим две самые популярные реализации «зеркала» на многих дисках.
Оглавление
RAID 10
Массив RAID 10 формируется как двухуровневая иерархия различных типов RAID. Нижний слой составляют зеркальные пары RAID 1, которые в свою очередь объединяются в массив RAID 0. Результат – комбинированный уровень RAID 1+0 или RAID 10. Каждый жесткий диск массива RAID 10 входит в одну из зеркальных пар (их количество – от двух до восьми – обозначим как M), поэтому общее количество жестких дисков массива N = 2 ∙ M всегда четное.
Отметим самые характерные особенности RАID 10. Этот уровень не требует каких-либо математических вычислений контрольных сумм на любой стадии его построения или работы. По этой причине ему не свойственна существенная деградация производительности, проявляющаяся в RAID 5 при отказе одного из дисков.
RAID 10 предполагает, что если диск в любом задействованном зеркальном комплекте откажет, то его содержимое может быть получено с оставшегося диска зеркальной пары. Таким образом, если массив RAID 10 подвергнется максимальному количеству отказов дисков, которое он может перенести, он преобразится в массив RAID 0 из M дисков, не имеющий надежности, но зато очень быстрый.
Массив RAID 10 в нормальном режиме работы позволяет повысить производительность операций чтения за счет параллельного доступа к множественным дискам. По этому показателю он становится равен скорости уровня RAID 0 из N дисков! Например, массив из четырех дисков позволяет считывать последовательность четырех блоков записанных данных одновременно со всех четырех дисков – по одному блоку с каждого диска.
RAID 10 обычно применяется там, где требуется высокий уровень избыточности. Способность обеспечивать сохранность данных в случаях множественных отказов жестких дисков – фундаментальное качество RAID 10. На практике максимальное количество отказавших дисков может достигать M = N / 2.
Давайте подсчитаем количество комбинаций отказавших дисков, при которых RAID 10 останется работоспособным. Число таких вариантов (промежуточные выкладки пропустим) равно 3M – 1.
Например, для состоящего из двух зеркальных пар массива RAID 10 число комбинаций безвредных отказов равно 32 – 1 = 8. Для проверки перечислим эти комбинации: {A1}, {A2}, {B1}, {B2}, {A1, B1}, {A1, B2}, {A2, B1} и {A2, B2}, где A1 и A2 – диски первой зеркальной пары, а B1 и B2 – диски второй пары.
RAID 1E
В то время как RAID 10 традиционно реализуется на четном количестве физических дисков, некоторые его производные могут также использовать и нечетное количество. Схема, в которой блоки данных записываются последовательно на все входящие в массив диски, а затем – еще раз на эти же диски, но со сдвигом на один блок, называется RAID 1E. Рассмотрим более пристально особенности этого уровня, разработанного и предложенного компанией IBM.
Также как и в случае традиционного RAID 10, массив RАID 1E не требует вычисления контрольных сумм. В этом смысле эти уровни эквивалентны.
Максимальное количество отказавших дисков, которое не наносит вреда массиву RAID 1E, состоящему из N дисков, равно P = [ N / 2 ]. Другими словами, если N – четное, то это количество (ровно половина общего числа дисков) совпадает с подобным показателем RAID 10. Если N – нечетное, то это количество – половина уменьшенного на единицу числа входящих в массив дисков.
Теперь для RAID 1E подсчитаем количество комбинаций отказавших дисков, при которых массив останется работоспособным. Число таких вариантов равно N ∙ 2P–1. Например, для массива из пяти дисков комбинаций будет 5 ∙ 22–1 = 10. Это – собственно пять дисков поодиночке, а также – пять пар, в которые попадают несоседствующие друг с другом диски: {D1}, {D2}, {D3}, {D4}, {D5}, {D1, D3}, {D1, D4}, {D2, D4}, {D2, D5}, {D3, D5}.
Анализ этой формулы показывает, что при росте числа дисков N уменьшается отношение числа поддерживаемых RAID 1E комбинаций отказов к подобному показателю RAID 10, состоящему из N – 1 дисков. Можно построить в Excel табличку, где в зависимости от числа N в два столбца посчитать количество безвредных комбинаций для RAID10 (3M – 1) и RAID1E (N ∙ 2P–1).
При N > 7 массив RAID 1E поддерживает меньшее чем RAID 10 число комбинаций! Например, в то время как «обычный» использующий 10 дисков RAID 10 выдерживает 35 – 1 = 242 комбинаций, использующий 11 дисков RAID 1E выдерживает лишь 11 ∙ 25–1 = 176 комбинаций.
Всегда более предпочтительно использовать четное число дисков для RAID 1E, чем нечетное, если требуется более высокая устойчивость к отказам дисков. Другими словами, всегда более предпочтительно использовать традиционный RAID 10!
Когда массив RAID 1E испытывает максимально приемлемое количество отказов дисков, равное [ N / 2 ], число последовательных независимых блоков, доступных одновременно, может быть меньше количества оставшихся работоспособными дисков. Например, при отказе двух из пяти дисков массива RAID 1E три последовательных блока окажутся записанными только на двух из трех рабочих дисков и не смогут быть прочитаны наиболее эффективным образом.
Производительность массива RAID 1E, состоящего из нечетного количества дисков, не может быть выше производительности содержащего на единицу меньшее количество дисков массива RAID 10, в тех случаях когда оба они испытывают максимально возможное число отказов.
Заключение
Уровень RAID 1E предоставляет большую гибкость в выборе количества дисков, используемых для построения массива. Число может быть четным или нечетным. Однако RAID 10 гораздо более надежен в отношении количества комбинаций отказов дисков, которые он может перенести даже при меньшем числе дисков. Более того, RAID 10 гарантирует производительность, равную совокупной производительности всех функционирующих в его составе дисков. Напротив, специфическая схема распределения блоков не всегда позволяет одновременно использовать все продолжающие работать диски RAID 1E. Таким образом, если исключительно высокая надежность и производительность являются первостепенными требованиями ваших приложений – выбирайте RAID 10!
Статья является авторским переводом документа Adaptec RAID 10 and its Alternatives.
Андрей Егоров, начальник отдела по работе с корпоративными клиентами «Компании «ТИМ», сертифицированный профессионал – MCSE, Master CNE, CIA, ICIS, etc.