Алгоритм - Учебный центр

Версия сайта для слабовидящих
Заполните форму ниже! Мы вам перезвоним!
Подтверждая отправку данной формы, Вы даете Согласие на обработку персональных данных в соответствии с Политикой обработки персональных данных

RAID-массивы (ликбез).

RAID-массивы (ликбез).

Для повышения возможностей устройств внешней памяти на жестких дисках, для повышения их надежности и производительности были предложены RAID-массивы.У накопителя на жестких дисках есть пределы его физических возможностей, которых в ряде случаев бывает недостаточно. Но с помощью параллельного использования нескольких дисков — дисковых массивов RAID (Redundat Array of Inexpensive Disks — избыточный массив недорогих дисков) физические возможности и надежность внешней памяти на жестких дисках значительно возросли. Идея заключается в подключении группы обычных (недорогих), как правило, однотипных дисков к RAID-контроллеру — устройству, которое для хост-компьютера этот массив представляет как один диск с улучшенными свойствами. Улучшения касаются значительного повышения надежности и (или) скорости обмена данными. В зависимости от алгоритма представления диска различают следующие типы (уровни) RAID:

- RAID 0 — дисковый массив без отказоустойчивости, простейшее средство повышения производительности. Данные разбиваются на блоки, которые равномерно распределяются по всем дискам массива. При параллельных обращениях хоста к различным областям «виртуального» диска, попадающим на разные диски, обращения реально распараллеливаются, что повышает производительность как по чтению, так и по записи. Отказ любого диска приводит к отказу всего массива. Пространство всех дисков используется полностью (избыточности нет).

- RAID 1 — зеркальное отражение (mirroring). Два (или более) диска дублируют друг друга.

Запись информации выполняется одновременно на все диски, чтение — с любого свободного, в результате чего производительность чтения повышается. Отказ одного диска приводит только к снижению скорости чтения. Отказавший диск может быть заменен, и для ввода его в действие требуется просто копирование данных с оставшегося диска. Синхронизация нового диска (установление идентичности содержимого) требует довольно большого времени, но может выполняться на фоне обращений к «живому». Эффективность использования пространства дисков низкая (при двух дисках эффективный объем составляет лишь половину их суммарного, при большем числе — и того меньше).

- RAID 2 — избыточный массив, в котором биты данных «размазываются» по нескольким дискам, и еще несколько дисков несут проверочные коды Хэмминга (CRC), позволяющие исправить битовые ошибки. Отказоустойчивость ниже, чем у RAID 1, производительность невысокая. Избыточность меньше, чем в RAID 1.

- RAID 3 — избыточный массив, отличающийся от RAID 2 тем, что вместо кодов Хэмминга (несколько дисков) используется лишь бит паритета (1 диск). Поскольку отказ (ошибка чтения) каждого диска определяется его встроенным контроллером, RAID-контроллер «видит» ошибочный диск и его бит вычисляет через бит паритета. Производительность, отказоустойчивость и эффетивность использования пространства довольно высокие.

- RAID 4 — избыточный массив, напоминающий RAID 3, но расслоение данных производится на уровне секторов (а не байтов и битов). Реализация сложнее, но эффективнее обслуживание коротких запросов.

- RAID 5 — распределение и чередование данных и паритета по дискам, но для паритета не выделяется специальный диск (биты паритета распределяются по всем дискам). Обеспечивает высокую скорость записи, но скорость чтения ниже, чем в RAID 4.

- RAID 6 — более сложная схема, устойчивая даже к двойным отказам (но ценой низкой производительности).

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

- RAID 10 — массив RAID 0, собранный из пар зеркальных дисков (RAID 1). Обеспечивает высокую скорость и надежность, но ценой большой избыточности.

- RAID 30 — массив RAID 0, собранный из блоков RAID 3.

- RAID 50 — массив RAID 0, собранный из блоков RAID 5. Обеспечивает отказоустойчивость и высокую производительность.

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

Аппаратный RAID-контроллер представляет собой интеллектуальное устройство со своим мощным микропроцессором, имеющее интерфейсы для подключения дисков, а также интерфейс подключения к хост-компьютеру. В качестве интерфейса дисков чаще всего использовали SCSI, поскольку требуется подключение большого числа устройств, и высокая эффективность использования шины SCSI здесь была вне конкуренции (шина SCSI не является специализированным интерфейсом для дисковых устройств - эта шина системного уровня). Были и варианты RAID-контроллеров с интерфейсом АТА, но это было не типично. В качестве интерфейса с хост-компьютером для внешних RAID-контроллеров, представляющих собой отдельное устройство со своим блоком питания и отсеками для установки дисков, гораздо чаще могли использоваться SCSI или FCAL. Для внутренних RAID-контроллеров раньше характерно было использование шины PCI (еще раньше использовали ЕISА и даже ISA, встречалась и VLB).

Функции RAID могли быть реализованы и программно, средствами ОС компьютера (например, эту возможность уже имела и Windows NT). При этом в качестве интерфейсов дисков используются интерфейсы существующих контроллеров (предпочтительно SCSI, но иногда использовали и АТА). Программный RAID-массив вполне справлялся с задачей повышения надежности, но для решения задачи повышения скорости требовалась значительно большая вычислительная мощность процессора.

 


Лицензия