2007 г.
Конфигурирование сервера Oracle для
сверхбольших баз данных
Carry V. Millsap, Oracle Corporation 21 августа, 1996
Назад Содержание Вперёд
Чередование и зеркалирование могут быть объединены в то, что многие люди сегодня называют
«RAID 0+1» 6. RAID 0+1 объединяет все преимущества и недостатки присущие RAID 0 и RAID 1:
отличную производительность, отличную устойчивость при отказах дисков и высокую стоимость
приобретения. Дублирование дисковых массивов
с чередованием является основой для построения высокозагруженных OLTP-приложений, решающих критически важные задачи.
- Производительность при случайном чтении
— отличная при всех уровнях параллелизма при условии, что каждый запрос на чтение использует один сегмент чередования.
Использование слишком малого размера сегмента чередования может привести к резкому ухудшению производительности при высоком уровне параллелизма. Несколько выше, чем в RAID 0, если используется оптимизация чтения RAID 1.
- Производительность при случайной записи — отличная даже при очень высоком
уровне параллелизма. Несколько хуже, чем в RAID 0, но много лучше, чем в RAID 5.
См. производительность случайной записи в RAID 1.
- Производительность при последовательном
чтении — отличная при всех уровнях параллелизма при условии, что каждый запрос
на чтение использует один сегмент чередования. Использование слишком малого размера сегментов чередования может привести к резкому ухудшению производительности при
высоком уровне конкуренции. Несколько выше, чем в RAID 0, если используется оптимизация чтения RAID 1.
- Производительность при последовательной
записи — отличная. Несколько хуже чем,
чем для RAID 0, но лучше чем для RAID 5.
См. производительность последовательной записи в RAID 1.
- Частота отказов — отличная. Та же, что и
для RAID 1.
- Длительность простоя — отличная. Та же,
что и для RAID 1.
- Снижение производительности в течение отказа — отличное. То же, что и для RAID 1.
- Стоимость приобретения — плохая. Та же,
что и у RAID 1 плюс возможны дополнительные затраты на программное или аппаратное
обеспечение для поддержки чередования.
- Стоимость обслуживания — удовлетворительная. Оптимизация конфигурации с чередования требует обучения, также как и интеграция процедур зеркалирования в процедуры обслуживания. Увеличение емкости дисковой подсистемы потребует либо приобретения дополнительных массивов, либо реконфигурации существующих.
RAID 3 является ответом высокой стоимости
удвоенной избыточности RAID 1. В конфигурации RAID 3 диски организованы в массив, в котором один диск выделен для хранения контрольных данных, расположенных на других дисках.
В RAID 3 размер сегмента чередования равен
1 биту. Конфигурация имеет свойство, которое
позволяет реконструировать данные любого диска с помощью данных, расположенных на других
дисках, используя операцию исключающего ИЛИ
(XOR).
Основное достоинство RAID 3 заключается в
много более низкой стоимости чем у RAID 1.
Однако низкая производительность выполнения
случайных операций ввода/вывода и низкая производительность при частичном отказе массива делают RAID 3 практически непригодным
для большинства серверных приложений Oraсle.
RAID 3 является лучшим решением для приложений Oracle у которых экономические ограничения
перевешивают требования надежности, с плохо
оптимизируемыми операциями полного сканирования таблиц, без операций модификаций БД.
- Производительность при случайном чтении
— плохая. Синхронизация дисков препятствует параллельному выполнению малых
случайных запросов чтения. Плохая производительность при высоком уровне параллелизма.
- Производительность при случайной записи
— плохая. Синхронизация дисков также препятствует параллельному выполнению малых случайных запросов записи. Плохая
производительность при высоком уровне параллелизма.
- Производительность при последовательном
чтении — очень хорошая для приложений с
низким параллелизмом; ухудшается при повышении параллелизма.
- Производительность при последовательной
записи — очень хорошая для приложений с
низким параллелизмом; ухудшается при повышении параллелизма.
- Частота отказов — хорошая. RAID 3 может
выдержать потерю любого диска в массиве
без перевода приложения в состояние простоя. Потеря двух дисков в массиве станет
причиной простоя и потребует выполнения
восстановления носителя. Обратите внимание, что устойчивость реализации RAID 3
деградирует с ростом числа дисков в массиве и что, в конечном счете, эта деградация
может привести к бОльшим потерям, чем полученная, на стоимости приобретения, экономия. Например, удвоение числа дисков в RAID 3 с 5 до 10 сохранит примерно 14% от
стоимости приобретения (см. раздел стоимости приобретения RAID 3), в то же время это
удвоение увеличит частоту отказов на 100%.
- Длительность простоя — хорошая. Продолжительность частичного простоя, связанного с выходом из строя одного диска в массиве равна времени на обнаружение неисправности и времени на замену диска в массиве. Длительность полного простоя, который
влечет выход из строя двух или более дисков в массиве, адаптера, шины или других
незащищенных компонент, увеличивается на
время необходимое для выполнения процедуры восстановления носителя сервера Oracle.
- Снижение производительности в течение отказа — удовлетворительное. Потеря выделенного диска с контрольными данными не вызовет дополнительных издержек производительности до момента замены диска. Потеря
диска с данными приведет к существенному
снижению производительности приложения
до момента замены диска, поскольку каждая операция ввода/вывода с вышедшим из
строя диском потребует ввода/вывода на все
другие диски в массиве. В течение замены
любого диска в RAID 3, требуются операции
ввода/вывода для реконструкции данных в
заменяемом диске, которые будут конкурировать с операциями ввода/вывода приложения, что станет причиной снижения производительности.
- Стоимость приобретения — удовлетворительная. Стоимость дисковой емкости в
g/(g - 1) раз выше, чем стоимость той же
емкости для RAID 0, где g — число дисков в
массиве, плюс стоимость специальных дисков с синхронизацией и специального контроллера для RAID 3. Таким образом, стоимость приобретения RAID 3 всегда будет
выше, чем стоимость RAID 0, но обычно
меньше, чем стоимость RAID 1 при g > 2.
Обратите внимание, что стоимость полного
полезного пространства снижается с увеличением числа дисков в массиве. К примеру,
использование массива с пятью дисками приведет стоимости, равной 125% от стоимости
аналогичной емкости RAID 0, но использование десяти дисков приведет лишь к 111%
стоимости от стоимости RAID 0. RAID 3
требует специального контроллера RAID 3 в
дополнение к адаптерам, необходимым для
RAID 0.
- Стоимость обслуживания — удовлетворительная. Требуется обучение для создания процедур сопровождения для обработки
различных событий возникновения простоя.
Увеличение емкости требует либо закупки
нового массива, либо переконфигурации существующих массивов.
RAID 5 подобен RAID 3 за исключение того,
что размер сегмента чередования в RAID 5 можно настраивать, а также того, что контрольные
блоки распределены по всем дискам в массиве.
Сегмент чередования RAID 5 содержит либо данные, либо контрольную информацию. Любой запрос на запись в массиве RAID 5 требует выполнения шести ресурсоемких операций [ 11, Sun (1995)]:
- Чтение блока, в который должна производиться запись.
- Чтение соответствующего контрольного блока.
- Вычет старой составляющей блока данных из контрольного блока.
- Добавление новой составляющей блока данных в контрольный блок.
- Запись контрольного блока.
- Запись блока данных.
Энергонезависимый кэш в значительной мере
снижает влияние издержек для операции записи,
но его эффективность зависит от многих условий. Пакетные задания, генерирующие большой
объем операций записи, могут быстро заполнить
кэш, снижая его возможность устранить проблемы, присущие RAID 5.
RAID 5 является очень полезным для снижения стоимости подсистем ввода-вывода при хранении данных, требующих высокую устойчивость
к отказам с высоким уровнем операций чтения,
но не для часто изменяемых данных. Поскольку RAID 5 имеет крайне низкую производительность при выполнении операции записи, многие
опытные проектировщики VLDB занимают негативную позицию по отношению к RAID 5. Для
VLDB с интенсивным использованием операции
чтения, в которых низкая производительность
при восстановлении БД не так важна как стоимость приобретения, массив на основе RAID 5
предлагает приемлемую производительность при
много меньшей стоимости чем RAID 1.
- Производительность при случайном чтении
— отличная при всех уровнях параллелизма
при условии, что каждый запрос на чтение
использует один сегмент чередования. Использование слишком малых размеров сегментов чередования может привести к резкому ухудшению производительности при высоком уровне конкуренции.
- Производительность при случайной записи — плохая. Наихудшая при высоком уровне параллелизма. Цикл чтениеизменение-запись, присущий RAID 5 и необходимый для поддержания контрольной информации делают его на порядок хуже в
сравнении с RAID 0. Использование дискового кэша может улучшить ситуацию, если
он имеет достаточный размер для обработки
необходимого уровня параллелизма.
- Производительность при последовательном
чтении — отличная при малом размере сегмента чередования в средах с низким уровнем параллелизма. Также отличная в средах с высоким уровнем параллелизма при условии, что каждый запрос на чтение попадает в один сегмент чередования. Использование слишком малого размера сегмента чередования может привести к резкому снижению производительности в средах с высоким уровнем параллелизма.
- Производительность при последовательной
записи — удовлетворительная в средах с
низким уровнем параллелизма. При высоком
уровне параллелизма может быть на порядок хуже, чем у RAID 0. Большие объемы
операций записи заполняют дисковый кэш
RAID 5, сводя к нулю его возможности по
смягчению низкой производительности массива. Как и для последовательного чтения,
высокий уровень параллелизма при малом
размере сегмента чередования снижает производительность.
- Частота отказов — хорошая. Выход из строя
любого одного диска в массиве не влияет
на доступность массива RAID 5 и приложений. Потеря двух дисков приведет к потере
данных, которую можно устранить только с
помощью восстановления носителя. Следует
отметить, что надежность RAID 5 падает с
ростом числа дисков в массиве и что потеря
надежности может свести к нулю преимущества от невысокой стоимости приобретения.
См. частоту отказов для RAID 3.
- Длительность простоя — хорошая. Продолжительность частичного простоя, связанного с выходом из строя одного диска в массиве равна времени на обнаружение неисправности и времени на замену диска в массиве. Длительность полного простоя, который влечет выход из строя более одного диска в массиве, адаптера, шины или других незащищенных компонент, увеличивается на время необходимое для выполнения процедуры восстановления носителя сервера Oracle.
- Снижение производительности в течение отказа — удовлетворительное. При чтении
данных, располагающихся на неповрежденном диске, снижения производительности
не будет. Запись данных на неповрежденный диск требует выполнения цикла чтениеизменение-запись. Чтение и запись данных, которые располагались на поврежденном диске, влечет за собой большие издержки и значительное снижение производительности, поскольку такие операции требуют
данных, располагающихся на всех дисках
массива. Реконструкция массива при замене
диска связана с резким ухудшением производительности в массиве.
- Стоимость приобретения — удовлетворительная. Стоимость дисковой емкости в
g/(g - 1) раз выше, чем стоимость той же емкости для RAID 0, где g — число дисков в массиве, плюс стоимость контроллера RAID 5. Стоимость приобретения RAID 5
всегда выше, чем стоимость RAID 0, но в общем, меньше, чем стоимость RAID 3 и теоретически меньше чем RAID 1 для g > 2.
В реальной жизни, ожидания производительности RAID 5 иногда превышают имеющиеся возможности по конфигурированию. Стоимость анализа и дополнительного оборудования, в итоге, может оказаться даже выше,
чем у RAID 0+1.
- Стоимость обслуживания — удовлетворительная. Для достижения оптимальной производительности требуется обучение конфигурированию массивов с чередованием. Увеличение емкости требует либо закупки дополнительных массивов, либо реконфигурирования существующих.
Дисковые технологии развиваются столь стремительно, что сложно сделать заключение по
производительности реализаций различных технологий без некоторого рода обобщений, которые
могут быть в конкретных случаях неверными. Если Вы живете по золотому правилу знай свои цели и понимай доступные технологии, то Вы будете периодически переосмысливать Ваши решения. Лучший путь для осознания Ваших целей и
понимания имеющихся технологий — общение с
опытными профессионалами и тщательная практическая проверка Ваших суждений. Увеличение
риска для бизнеса требует увеличения важности
задачи тщательного тестирования. Таблица 1 показывает оценки различных конфигураций RAID
специально в применении к серверу Oracle.
6(к тексту) | Обратите внимание, что изобретатели термина RAID включили в понятие RAID 1 возможности «RAID 0+1» [1, Chen et al.(1994), 153]. Поставщики оборудования обеспечили термину «RAID 0+1» насыщенную и счастливую жизнь. |
Назад Содержание Вперёд
|
|