Для корректного отображения этого элемента вам необходимо установить FlashPlayer и включить в браузере Java Script.
+7 (495) 775-33-76




Дисковые системы RAID 3

Часть 1 | Часть 2 | Часть 3


RAID Уровень 5: Независимый Доступ и Распределенная Четность


RAID пятого уровня это массив RAID с независимым доступом, который распределяет контрольные данные по всем дискам массива. Другими словами, там нет выделенного диска четности. Это значит, что нет того диска, который становится узким местом при записи, как в RAID 4. Задержка, связанная с циклом чтения, модификации и записи, обязательная для операций записи, при этом остается, но в RAID 5 все-таки нет отдельного диска, около которого создается "затор", как в подсистемах RAID 4.

Увеличение параллелизма в RAID 5


По мере увеличения количества дисков в массивах RAID 5, увеличивается и потенциальное число совмещаемых операций. Тут мы видим разительный контраст по сравнению с RAID 4 с узким местом в виде диска четности. Таким образом, массивы RAID 5 могут реально поддерживать большее количество дисков, чем RAID 4, что позволяет с RAID 5 добиваться большей емкости для лучшей производительности. Нужно, однако, помнить об одном: чем больше дисков, тем меньше среднее время наработки на потерю данных (MTDL - mean time to data loss), так как больше вероятность возникновения сбоя на новом диске до того, как будет восстановлен предыдущий.

Кроме того, увеличение производительности сильно зависит от распределения данных по дискам-участникам и шаблона доступа приложения. Исследование работы подсистем RAID с несколькими распространенными приложениями, проведенные в Digital Equipment Corporation, показали, что 55 процентов операций ввода-вывода адресованы 20 процентам дисков массива.

XOR Диски в RAID 5


Распределение контрольных данных в массивах RAID 5 отлично подходит технологии XOR интеграции дисков. Поскольку контрольные данные хранятся на различных дисках массива, несколько операций записи могут одновременно использовать несколько совершенно разных дисков для записи данных и соответствующих им контрольных данных. Предположим, что в массиве RAID 5 восемь дисков, обновление каждой полосы включает чтение, запись и вычисление контрольных данных на двух дисках из восьми. Легко можно вообразить себе множество комбинаций одновременных операций, которые будут адресованы разным дискам, и при которых удастся избежать сражения за один и тот же диск. Конечно, нет гарантии, что такое соперничество не возникнет, но в принципе, распределение нагрузки с помощью совмещенных операций может привести к значительному росту производительности для некоторых приложений, например, программ обработки транзакций. Кроме того, пропускная способность шины, необходимая для расчета паритета в операциях XOR составляет от 33 до 50 процентов, что проводит к повышению пропускной способности массива RAID.

Отображение данных на пятом уровне RAID


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


Массивы RAID пятого уровня - одни из самых популярных решений RAID на рынке. Хотя распределение контрольных данных по нескольким дискам выглядит несколько сложным, на самом деле найти их очень просто, достаточно знать номер соответствующего слоя. Другими словами, отображение данных для виртуального устройства диктует слой, а полоса определяет местоположение контрольных данных.

Приложения для RAID пятого уровня


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

RAID Уровень 6: Независимый Доступ с Двойной Четностью


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

Шестой уровень RAID обеспечивает два уровня резервного копирования; это значит, что массив теряет два диска, и при этом продолжает функционировать.

Применение RAID 6 гораздо более дорогостоящее по сравнению с другими уровнями RAID. Это происходит благодаря необходимости поддерживать два уровня сокращенных операций для регенерации и восстановления паритета. Для этого требуются более дорогие и сложные контроллеры, чем на других уровнях RAID.

RAID Уровень 6: Одномерная избыточность


Первым подходом к RAID 6 является использование двух различных алгоритмов для генерирования контрольных данных. Легче всего это реализовать, выделив для поддержки дисков с данными два диска четности. Один из дисков четности поддерживает один алгоритм четности, в то время как второй поддерживает другой. Использование двух алгоритмов называют четностью P+Q.

Например, функция XOR рассчитала значение четности равное P. В этом случае, функция четности Q должна относиться к каким-то другим данным. Хорошим решением кажется использование программы исправления ошибок Рида Соломона, которая используется для жестких дисков и ленточных носителей. В случае отказа двух дисков, данные на обоих дисках восстанавливаются посредством решения двух уравнений с двумя переменными, это алгебраический прием, который можно ускорить с помощью вспомогательного процессора.

Отображение данных на RAID уровня 6 с одномерной четностью


Рисунок 10 показывает отображение данных для одномерного решения RAID 6. На диаграмме показаны два различных значения четности, одно обозначено как функция Контрольные данные А, а второе Контрольные данные Б. Оба вида контрольных данных распределяются по всем дискам массива, как в RAID 5, чтобы избежать проблемы записи как в RAID 4.


RAID Уровень 6: Двухмерная избыточность


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

Этот подход легко представить как матрицу MxN, где диски четности M нужны для расчета четности N, и наоборот, диски четности N нужны для вычислений четности M. Общее число дисков четности, необходимое для этой схемы равно M+N. Объем служебной информации четности для этого типа массива уменьшается, когда число строк и столбцов равно, а размер массива увеличивается. Например, для массива из девяти дисков 3x3 нужны 6 дисков четности для служебной информации, занимающей 66 процентов объема. Однако, когда в массиве 100 дисков при конфигурации 10x10, необходимы 20 дисков четности, а процент служебной информации снижается до 20.

Одним из преимуществ двухмерного подхода является то, что тот же алгоритм может использоваться для расчета контрольных данных. Это значительно упрощает математические операции, используемые для сокращенных операций, таких как восстановление данных и восстановление четности. Можно использовать одну и ту же программу управления массивом или тот же вспомогательный процессор.

Отображение данных на RAID уровня 6 с двухмерной четностью


Рисунок 11 показывает отображение данных для двухмерной подсистемы RAID уровня 6. Организация показанной матрицы демонстрирует ориентацию диска. Схема необязательно точна, так как матрица строится на основании экстентов, а не дисков. Кроме того, нет никаких правил, которые определяли бы структуру таблицы. Вообще, нет необходимости строить матрицу как ряды независимых массивов. Это требовало бы идентичных конфигураций размеров экстентов и глубины слоев в обоих массивах. Вместо этого было бы легче построить таблицу из экстентов, принадлежащих одному и тому же массиву.


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


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

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

Задачи Многослойных Массивов RAID


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

Таблица. Достоинства и недостатки разных уровней RAID

Уровень RAIDОтносительно сильная сторона Относительно слабая сторона
RAID 0ПроизводительностьОтсутствие избыточности
RAID 1Избыточность без четностиЦена
RAID 3Минимальная задержка записиОтсутствие совмещения операций
RAID 4Совмещение небольших операций ввода-выводаУзкое место диска четности
RAID 5Совмещение небольших операций ввода-выводаЗадержка записи


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

Еще один момент: массив наивысшей позиции представляется как единое виртуальное устройство или единый массив. Низшая позиция фактически состоит из нескольких физических массивов: по одному на каждый виртуальный массив высшей позиции. Это показано на рисунке 12.


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

Сочетание Расслоения и Зеркального копирования


Комбинацию из RAID первого и нулевого уровней называют RAID 0+1 или RAID 10. Как мы увидим дальше, у нее есть несколько интересных преимуществ. В результате сочетания скорости расслоения RAID 0 и зеркального копирования RAID 1 мы получаем быструю подсистему RAID, без проблем записи и с отличной производительностью. На рисунке 13 показана конфигурация RAID 0+1/ RAID 10, где компонент RAID 0 занимает наивысшую позицию, а RAID 1 низшие позиции.


Заметьте, что этот массив может "позволить" себе потерю нескольких дисков одновременно, если они не входят в одну и ту же зеркальную пару. Однако массив не гарантирует защиту данных в случае сбоя двух дисков одной зеркальной пары, как это делает RAID 6. Кроме того, цена такого массива несколько выше стоимости массивов с четностью из-за того, что служебные данные при резервировании дисков составляют 100 процентов.

Массивы RAID 0+1/ RAID 10 становятся все более популярными по следующим причинам:
  • Сокращенные операции не производятся с пониженной производительностью
    • Проблема записи минимальна по сравнению с четными массивами RAID
    • Массив с x виртуальных дисков-участников может пережить отказ до x дисков
    • Емкость массива возрастает без ущерба для среднего времени до потери данных (MTDL)
    • MTDL зависит от отдельного диска, а не их совокупности
  • Массивы легко применять для множества приложений

Часть 1 | Часть 2 | Часть 3



© Copyright "СТОРУС" 2003 - 2024