RAID можно реализовать как программный комплекс, где управляющее программное обеспечение обычно либо поставляется в комплекте с ОС, либо является дополнением к ОС типа программ "volume manager" (Управление томами), поставляемого фирмами Veritas, Sun или HP. Этот тип RAID известен также как централизованный (host-based) RAID. Такая реализация приводит к небольшим накладным расходам, так как при этом расходуются память, полоса пропускания ввода/вывода и ресурсы ЦП того хост-компьютера, на котором этот комплекс реализуется. Обычно в таких накладных расходах нет ничего пугающего, но они должны быть включены в планы возможностей ресурсов хоста.
Если RAID представлен в виде аппаратного комплекса, все его функциональ-
ные возможности даются в виде микрокода в модулях выделенных дисковых
контроллеров, подключенных к Эти контроллеры являются
ные возможности даются в виде микрокода в модулях выделенных дисковых
контроллеров, подключенных к Эти контроллеры являются
внутренними по отношению»: тому хосту, где реализуется RAID. Такой тип RAID известен также как встроенный RAID на базе контроллеров.
Далее, можно использовать контроллеры, являющиеся внешними для того
хоста, где мы желаем реализовать RAID. Такие конфигурации осуществляются
по типу моста и не приветствуются, так как они приводят к более высокому вре-
мени обслуживания запросов ввода/вывода. Это увеличение времени обслужи-
вания связано с увеличением пути от диска до хоста. Подобный
тип реализации обычно характерен для подсистем которые на-
половину являются волоконно-оптическими, а наполовину - SCSI. Это же мож-
но увидеть в реализациях систем запоминания информации, поддерживающих
несколько хост-компьютеров, работающих с несколькими операционными
системами. Кроме того, мосты имеют тенденцию насыщаться, когда система за-
нята запросами ввода/вывода. Во всех случаях аппаратные RAID предпочтите-
льнее, чем централизованные (или которые, в
свою очередь, предпочтительнее мостовых RAID.
хоста, где мы желаем реализовать RAID. Такие конфигурации осуществляются
по типу моста и не приветствуются, так как они приводят к более высокому вре-
мени обслуживания запросов ввода/вывода. Это увеличение времени обслужи-
вания связано с увеличением пути от диска до хоста. Подобный
тип реализации обычно характерен для подсистем которые на-
половину являются волоконно-оптическими, а наполовину - SCSI. Это же мож-
но увидеть в реализациях систем запоминания информации, поддерживающих
несколько хост-компьютеров, работающих с несколькими операционными
системами. Кроме того, мосты имеют тенденцию насыщаться, когда система за-
нята запросами ввода/вывода. Во всех случаях аппаратные RAID предпочтите-
льнее, чем централизованные (или которые, в
свою очередь, предпочтительнее мостовых RAID.
Уровни RAID
Первоначально RAID был очень простым методом логического комбинирования двух или более дисков, но, как и практически для всех идей в нашей отрас-
ли, потребовалось больше возможностей выбора для удовлетворения самым
различным требованиям. Сегодня уровни RAID лежат в диапазоне от 0 до 7, и
имеется более восьми различных возможностей для выбора. Разница между
уровнями основывается на изменении моделей ввода/вывода на диски. Эти мо-
дели по своей природе предлагают различные уровни и типы ха-
рактеристик производительности и защиты.
имеется более восьми различных возможностей для выбора. Разница между
уровнями основывается на изменении моделей ввода/вывода на диски. Эти мо-
дели по своей природе предлагают различные уровни и типы ха-
рактеристик производительности и защиты.
RAID О
Этот уровень RAID представляет нормальную файловую систему со страй-где потеря данных при выходе из строя одного из дисков является обычной вещью. Проще говоря, это данные, распределенные по связке дисков. Данный уровень обеспечивает хорошие характеристики производительности чтения/записи, но не восстанавливаемости (см. таблицу 11.1).
RAID 1
Говоря простым языком, этот уровень RAID обеспечивает зеркалирование и таким образом полную избыточность данных. Этот уровень часто называется
зеркалънымдиском.
В большинстве случаев запоминающее устройство, каким его видит операционная система, составлено из двух или более физических дисков. Однако приложениям или базе данных оно представляется в виде единого диска. Когда система пишет на диск, она записывает точную копию данных на всесоставляющие запоминающего устройства. Для такого типа RAID требуется
вдвое большее количество дисковой памяти по сравнению с RAID 0. Кроме то-
го, можно извлечь некоторые дополнительные преимущества из параллельного
чтения двух членов. На этом уровне RAID отсутствуют ка-
вдвое большее количество дисковой памяти по сравнению с RAID 0. Кроме то-
го, можно извлечь некоторые дополнительные преимущества из параллельного
чтения двух членов. На этом уровне RAID отсутствуют ка-
кие-либо вычисления, связанные с четностью (см. таблицу 11.2).
RAIDO + 1
Принцип: сначала создай страйпинг, а затем зеркалируй то, что ты только что распределил. Этот уровень RAID сочетает в себе уровни 0 и 1 (страйпинг и
зеркалирование). Он также обеспечивает хорошие значения производительно-
сти при чтении и записи, а также избыточности без дополнительных наклад-
ных расходов на вычисление четности. В случае сбоя дисков не требуется
реконструкции данных, так как данные считываются с "выжившего" зеркала.
Данный уровень RAID является наиболее частой реализацией в случае прило-
жений, ведущих интенсивную и используется в них очень широко. Наи-
более серьезной претензией к этому уровню является цена, поскольку для его
реализации требуется вдвое больше дисковой памяти. Чтобы оправдать эти рас-
ходы, нужно потратить немало времени на понимание требований и нужд про-
изводительности и доступности систем. В таблице 11.2 приводился пример
конфигурации, в которой данные сначала распределяются по нескольким дискам (страйпинг), а затем то, что при этом получилось, еще и зеркалируется. Однако обратите внимание, что в тех случаях, когда одна из частей данных (например, Data 11 на диске 1) становится недоступной из-за выхода из строя диска 1, недоступным становится и весь зеркальный комплект (размещенный на дисках 1-4). Это очень важный момент, потому что потеря всего зеркального комплекта уменьшает пропускную способность при обслуживании ввода/вывода запоминающего устройства на 50%.
сти при чтении и записи, а также избыточности без дополнительных наклад-
ных расходов на вычисление четности. В случае сбоя дисков не требуется
реконструкции данных, так как данные считываются с "выжившего" зеркала.
Данный уровень RAID является наиболее частой реализацией в случае прило-
жений, ведущих интенсивную и используется в них очень широко. Наи-
более серьезной претензией к этому уровню является цена, поскольку для его
реализации требуется вдвое больше дисковой памяти. Чтобы оправдать эти рас-
ходы, нужно потратить немало времени на понимание требований и нужд про-
изводительности и доступности систем. В таблице 11.2 приводился пример
конфигурации, в которой данные сначала распределяются по нескольким дискам (страйпинг), а затем то, что при этом получилось, еще и зеркалируется. Однако обратите внимание, что в тех случаях, когда одна из частей данных (например, Data 11 на диске 1) становится недоступной из-за выхода из строя диска 1, недоступным становится и весь зеркальный комплект (размещенный на дисках 1-4). Это очень важный момент, потому что потеря всего зеркального комплекта уменьшает пропускную способность при обслуживании ввода/вывода запоминающего устройства на 50%.
RAID 1+0
Принцип: сначала зеркалируй, а затем проведи страйпинг того, что ты зерка-лировал. Этот уровень RAID имеет те же функциональные возможности, что и RAID 0 + 1, но он более приспособлен к нуждам высокой доступности. Дело в том, что при выходе из строя одного из дисков зеркального комплекта весь комплект зеркалированного тома не становится недоступным. Следует также отметить, что теперь потеря одного из дисков не приводит к уменьшению пропускной способности обслуживания ввода/вывода на 50%. Именно этот метод следует предпочесть для конфигураций, в которых зеркалирование сочетается со страйпингом и к тому же имеются некоторые аппаратные ограничения.
В таблице 11.4 иллюстрируется концепция RAID Обратите внимание,
что если один из кусков данных (допустим, Datal 1 на диске 1) становится недоступным из-за сбоя на диске другие диски члена набора (диски не становятся недоступными. Недоступен только диск 1, а диски 2-4 продолжают
оставаться доступными для обслуживания запросов ввода/вывода. Следует отметить, что RAID 10 является производным от RAID 1 + 0 с аналогичными характеристикам производительности и доступности, но с некоторыми отличиями в реализации.
Таблица 114.
Пример конфигурации тома с RAID 1 + 0
diski
|
disk2
|
disk3
|
disk4
|
disk5
|
disk6
|
disk7
|
disk8
|
Datal 1
|
Datal 1
|
Datal 2
|
Datal 2
|
Data 13
|
Data13
|
Data14
|
Datal 4
|
Data21
|
Data21
|
Data22
|
Data22
|
Data23
|
Data23
|
Data24
|
Data24
|
. RAID 2
В этот уровень RAID включен страйпинг, а защита/избыточность обеспечиваются средствами контроля четности. Для него требуется меньше памяти, чем для RAID но необходимость вычислять и записывать байты четности замедляет процесс записи. Данный уровень RAID был одной из первых реализаций
страйпинга с контролем четности, использующей известную методику кодов
Хэмминга, но затем он был заменен уровнями RAID 3, 5 и 7. Сейчас используется очень редко.
RAID3
Для этого уровня RAID алгоритм ЕСС вычисляет байты контроля четности для обеспечения избыточности данных, как это было в RAID 2, но все байты четности записываются на одном диске. Данные четности для этого уровня хранятся на уровне /байт в противоположность уровню блок/фрагмент. Свою популярность RAID 3 завоевывал медленно, но, тем не менее, он до сих пор используется достаточно широко. Этот метод более всего подходит для приложений, работающих с витринами данных или хранилищами данных, которые
обслуживают мало пользователей, но зато требуют высокой производительно-
сти при последовательном вводе/выводе больших объемов данных (высокоин-
тенсивная передача Если для данного приложения нормой являются
полные сканирования таблицы и/или сканирования по диапазону индекса, а
популяция пользователей невелика, RAID 3 - это именно то, что нужно. Табли-
ца 11.3 служит иллюстрацией физического размещения и характеристик тома
RAID 3.
сти при последовательном вводе/выводе больших объемов данных (высокоин-
тенсивная передача Если для данного приложения нормой являются
полные сканирования таблицы и/или сканирования по диапазону индекса, а
популяция пользователей невелика, RAID 3 - это именно то, что нужно. Табли-
ца 11.3 служит иллюстрацией физического размещения и характеристик тома
RAID 3.
RAID 4
Это такой же уровень, что и RAID 3, но данные четности при этом записываются на уровне блоков. Этот уровень используется очень редко. Одним из немногих производителей, кому удалось его успешно реализовать, Network Appliance с линией запоминающих устройств NetApp Filers.
RAID 5
Это, напротив, одна из наиболее часто встречающихся сегодня реализаций
RAID. Для этого уровня избыточность данных обеспечивается за счет вычислений четности, как и в RAID 2, 3, 4 и 7, но данные о четности хранятся вместе с данными. Следовательно, информация о четности распределена по всем дискам, конфигурированным для запоминающего устройства. RAID 5 очень привлекателен для многих сред, потому что он приводит к минимальной потере дискового пространства на хранение информации о четности, обеспечивает хорошую производительность при выполнении операций произвольного (прямого) чтения и облегченные операции записи, а также экономит издержки на зерка-
лирование. RAID 5 с его поддержкой одновременного обслуживания многих запросов ввода/вывода лучше смотрится с точки зрения числа операций ввода/вывода в секунду (IOPS, input/output per second). Его не следует применять
для приложений с высокой интенсивностью записи, так как непрерывный процесс считывания слоя, вычисления его новой четности и записи слоя обратно на диск (с новой четностью) делает процесс записи значительно более медленным.
Исключением из этого пришила, которое требует отдельного рассмотрения, является случай, когда подсистема ввода/вывода имеет значительное количество кэшей записи, и данные анализа убедительно показывают, что дополнительные накладные расходы, обусловленные применением алгоритмов ЕСС, сводятся к минимуму. Определение того, что такое "значительное" количество, мы оставляем за пользователем, хотя, вообще говоря, значительным может считаться кэш размером в несколько гигабайтов.
Однако для многих систем штрафы за производительность операций записи могут быть высокими даже при значительном размере кэша записи, в зависимости от числа операций записи и их объема. Как и в случае RAID 3, этот уровень хорошо подходит для приложений, работающих с витринами данных и хранилищами данных, но при этом он может поддерживать множество пользователей приложений, выполняющих операции произвольного (прямого), а не последовательного ввода/вывода.
Таблица 11.5 отображает том RAID 5 с четырехкратным страйпингом, в котором данные и контроль четности являются распределенными. Таблица иллюстрирует физическое размещение слоев (Datal-Data4) и соответствующих им четностей по пяти дискам, составляющим один том.
Таблица 11.5.
Пример конфигурации тома RAID 5
diski
|
disk2
|
disk3
|
disk4
|
disk5
|
Datal 1
|
Data 12
|
Data 13
|
Datal 4
|
Parity 1
|
Data21
|
Data22
|
Data23
|
Parity2
|
Data24
|
Data31
|
Data32
|
Parity3
|
Data33
|
Data34
|
Data41
|
Parity4
|
Data42
|
Data43
|
Data44
|
RAID 6
Ha этом уровне RAID четность вычисляется с использованием более сложного алгоритма, а избыточность обеспечивается применением продвинутого многомерного метода контроля четности. RAID 6 хранит два набора данных о четности для каждого блока данных и потому выполняет запись еще медленнее, чем RAID 5. Но при сбоях диска RAID 6 способствует более быстрому восетанов-лению доступности дисков в запоминающем устройстве (после сбоя диска), не подвергая производительность отрицательному влиянию последствий повторной синхронизации дисков в запоминающем устройстве. Данный уровень RAID используется очень редко.
RAID 7
Это улучшенная реализация RAID 3. Поскольку операции чтения и записи в
RAID 3 выполняются синхронным образом, диск с данными о четности может
стать узким местом при записи (это верно не RAID 7 позволяет органи-
RAID 3 выполняются синхронным образом, диск с данными о четности может
стать узким местом при записи (это верно не RAID 7 позволяет органи-
зовать асинхронные операции чтения и записи, что безоговорочно улучшает
общую производительность ввода/вывода. RAID 7 имеет те же характеристики,
что и RAID 3, где все данные о четности хранятся на выделенном диске. RAID 7
появился на рынке сравнительно недавно и у него есть все шансы заменить
RAID 3 в тех реализациях, где он был выбран, когда RAID 7 еще не существовало.
Используя RAID 7, можно пожинать плоды преимуществ пересылки данных,
присущие RAID 3, и не терять черты ввода/вывода, предлагае-
общую производительность ввода/вывода. RAID 7 имеет те же характеристики,
что и RAID 3, где все данные о четности хранятся на выделенном диске. RAID 7
появился на рынке сравнительно недавно и у него есть все шансы заменить
RAID 3 в тех реализациях, где он был выбран, когда RAID 7 еще не существовало.
Используя RAID 7, можно пожинать плоды преимуществ пересылки данных,
присущие RAID 3, и не терять черты ввода/вывода, предлагае-
мые RAID 7.
RAID-S
Если вы используете дисковые массивы ЕМС, они предлагают вам собственную версию RAID 3/5. Эта версия хорошо приспособлена для приложений витрин/хранилищ данных. Использования данного уровня RAID следует избегать
для приложений с высокой интенсивностью записи или с большим объемом
транзакций по тем же самым причинам, что и в случае любых реализаций
RAID 5. Решения ЕМС для хранения информации обычно конфигурируются с большими кэшами записи, но эти кэши недостаточно велики, чтобы перекрыть дополнительные накладные расходы, связанные с вычислениями четности во время записи.
Auto RAID
Применяя реализованный компанией HP Auto RAID, контроллер с интеллектуальными возможностями, встроенный в подсистему ввода/вывода, динамически модифицирует уровень RAID для каждого блока диска, используя для них уровни RAID 0 + 1 или RAID 5, в зависимости от предыдущей статистики запросов ввода/вывода. Статистика последних моделей ввода/вывода для блока диска поддерживается с использованием "рабочего набора" (представляющего
набор блоков диска). По очевидным причинам имеется по одному блоку для
команд чтения и записи, и блоки мигрируют из одного набора в другой в зависимости от типа производимых с ним действий. В этом контексте блок диска имеет размер 64 Кбайта.
Говоря по-другому, блок RAID 5 может быть динамически переведен в блок RAID 0 + 1, если интеллектуальные функции определяют и предсказывают, что в первую очередь блок будет использован для записи. Контроллер также выполняет преобразование предыдущей операции, а именно, преобразовывает блок
RAID 0 + 1 в блок RAID 5, если он определяет и предсказывает, что блок будет в первую очередь использован для чтения. Для поддержания такой конфигурации все диски в массиве используются для всех томов RAID, конфигурированных для данного массива. Это означает, что физическая независимость дисков в томе не может быть достигнута.
Хотя данная реализация RAID освобождает администраторов системы и базы данных Oracle от значительного количества работы и усилий по сопровождению, тем не менее, к гибридным системам Oracle, которые могут быть в одно и тоже время интенсивны как по чтению, так и по записи, должно быть проявлено особое внимание.
Если система внезапно становится интенсивной по чтению после того, как в течение предыдущего периода проявляла высокую активность по записи, процесс конверсии не может произойти мгновенно. При этом блоки могут "застрять" в RAID 5 (где они оставались после фазы чтения), даже если мы уже
перешли в фазу записи. Такое случается, когда нагрузка на систему высока и процесс преобразования откладывается до более спокойных времен. Подобное поведение может быть распространенным для многих загруженных гибридных
систем Oracle.
Реализуя такую технологию для работающих в тяжелом режиме систем Oracle, мы должны быть готовы к непредсказуемым изменениям производительности если система имеет нормальные нагрузки по чтению и записи со случайными изменениями типа пресловутых ночных пакетных заданий. Поэтому в случае реализации Auto RAID необходимо предпринять все усилия для разнесения интенсивных по чтению и записи компонентов по разным дисковым массивам. В приведенной ниже таблице дается резюме различных уровней RAID.
Уровень Функциональные возможности
RAID 0 Обеспечивает страйпинг без восстанавливаемости. Приложению требуется
RAID 1
RAID 0 + 1/ 1+0
RAID 2
RAID 3
производительность чтения/записи без восстанавливаемости (редкий случай).
Предоставляет зеркалирование и восстанавливаемость. Приложению в первую очередь требуется производительность при записи.
Обеспечивает комбинацию уровней 0 и 1 и восстанавливаемость. Приложению требуется производительность при чтении и записи. Эти уровни используются очень часто (отметим, что 1 + 0 превосходит 0 + 1 в смысле обеспечения
доступности).
Это одна из первых реализаций страйпинга с четностью, в которой для вычисления четности использована методика кодов Хэмминга. Впоследствии ее заменили на RAID 3, RAID 5 и RAID 7, и теперь она реализуется очень редко.
Обеспечивает страйпинг и контроль четности на уровне бит/байт и поддерживается выделенным диском для хранения информации о четности. К тому же обеспечивает восстанавливаемость. Приложению необходима высокая производительность чтения при выполнении объемных последовательных считываний, а также требуются лучшие скорости передачи данных для последовательных считываний по I0PS. Используется не слишком широко, но постепенно завоевывает популярность.
RAID 4 Обеспечивает с контролем четности на уровне блока и поддерживается
выделенным диском для хранения информации о четности. Тоже обеспечивает восстанавливаемость, но очень редко поддерживается производителями аппаратного обеспечения.
RAID 5 Обеспечивает страйпинг с контролем четности на уровне блока. Информация
о четности распределена по некоторому числу дисков в томе. Также обеспечивает восстанавливаемость. Предложению необходима высокая производительность чтения для произвольных считываний, которые малы по своей природе, и требуются лучшие IOPS для скоростей передачи данных. Используется очень широко.
RAID б Обеспечивает страйпинг с многомерным контролем четности на уровне блока.
Поддерживает восстанавливаемость данных, но страдает от замедления записи по сравнению с RAID 5. Реализуется очень редко.
RAID 7 Те же функциональные возможности, что и у RAID 3, но с лучшими возможностями
асинхронного чтения и записи. Существенно более высокая общая производительность ввода/вывода по сравнению с RAID 3, но и значительно более высокая стоимость, чем у RAID 3.
Реализация RAID 3/5 фирмы EMC.
Auto RAID Автоматическая технология RAID фирмы HP, которая автоконфигурирует систему
ввода/вывода, опираясь на природу и тип ввода/вывода, выполняемого блоками диска в массиве RAID.
< Предыдущая | Следующая > |
---|