Лекция: Уровни RAID
Кто додумался назвать различные модификации уровнями? По идее, именно исследователи из Беркли в 1988 году придумали такую классификацию, совершенно не думая о том, что у нормальных людей уровни четко связаны с иерархией.
В RAID уровнях нет преемственности. RAID 3 не есть улучшенная модификация RAID 4, так же как RAID 5 не лучше RAID 1. Они разные.
Сразу оговоримся, что есть простые (single) и составные (multiple) RAID массивы. Составные являются сочетанием двух простых, так что начнем с основных 8 уровней.
RAID 1
Простейший массив, использующий чередование без четности. Вся входящая информация разбивается на блоки фиксированной длины (например, 16 Кбайт) и раскидывается на все имеющиеся диски.
На рис. 131, б приведен пример, как в RAID 0 массиве на 4 дисках хранятся данные разного размера. Размер блока – 16 Кбайт. Есть файлы размером 4 Кбайт, 20 Кбайт, 100 Кбайт, 500 Кбайт.
При наличии двух-четырех дисков RAID 0 дает ощутимый выигрыш в скорости передачи данных, но совершенно не обеспечивает надежность. Для его построения подойдет любой дешевый и даже программный RAID-контроллер. Подходит для тех, кому нужно выжать максимум производительности от файловой системы при минимальных затратах.
Рис. 130
Рис. 131
RAID 1
Этот уровень является обычным зеркалированием. На два жестких диска пишутся две одинаковые копии данных. При этом можно использовать дешевый RAID контроллер или даже его программную реализацию.
Рис. 132
RAID 1 позволяет надежно защитить данные и обеспечить работу системы даже при поломке одного из дисков. Вот почему он получил широкое распространение среди пользователей, желающих защитить от потери личные данные. Выигрыша в скорости при использовании RAID 1 нет.
Рис. 133
RAID 2
Второй уровень RAID оказался нежизнеспособным. Все те же умельцы из Беркли предложили использовать одновременно две технологии – побитовое чередование и код Хамминга для восстановления ошибок. В теории это должен быть неплохой по надежности и рабочей емкости массив, построенный из 14 или 39 дисков (!). Часть дисков (10 или 32) используется для хранения данных с чередованием, остальные – для хранения высчитанных контрольных сумм. Реализация таких систем требовала специальных дорогостоящих контроллеров, которые так и не прижились на рынке. В итоге RAID 2 сейчас не используется. Но идея красивая.
Рис.134
Рис. 135
RAID 3
Третий уровень использует чередование и выделенный диск для контроля четности. Блоки данных обычно имеют длину меньше 1024 байт. Информация распределяется на несколько дисков, а высчитанное значение по четности сохраняется на отдельный диск.
Все скоростные преимущества чередования сводятся на нет необходимостью записывать контрольную сумму на выделенный диск, а больше всех страдает скорость случайной записи. К достоинствам отнесем возможность работы массива при отказе одного из дисков.
Рис. 136
Рис. 137
RAID 4
Отличается от RAID 3 только размером блока данных при чередовании. Это несколько улучшает работу массива при случайном чтении, но запись все равно довольно медленная. Диск с контрольными суммами является ярко выраженным «узким местом» в системе.
Рис. 138
Так как является компромиссным вариантом между RAID 3 и RAID 5, не нашел своего места на рынке и редко используется. Это держит цены на соответствующие контроллеры на высоком уровне.
Рис. 139
RAID 5
Наиболее распространенный в системах хранения данных – пятый уровень. Он характеризуется применением чередования и четности. В отличие от RAID 3, контрольные суммы не хранятся на одном диске, а разбрасываются по всем, что позволяет значительно поднять скорость записи. Главный принцип распределения экстраблоков: они не должны располагаться на том же диске, с которого была зашифрована информация.
Рис. 140
Надежность и скорость работы такой системы оказываются очень даже высокими. При восстановлении информации всю работу на себя берет RAID контроллер, так что операция проходит довольно быстро.
Рис. 141
RAID 6
Для некоторых особо критичных приложений требуется повышенная надежность. Например, чтобы при выходе из строя даже двух дисков массив сохранил данные и даже остался работоспособным. Можно ли это сделать? Конечно, решение лежит на поверхности.
Рис. 142
Используются все те же технологии чередования и четности. Но контрольная сумма вычисляется два раза и копируется на два разных диска. В итоге данные окажутся потерянными только в случае выхода из строя сразу трех жестких дисков. По сравнению с RAID 5 это более дорогое и медленное решение, которое может показать себя разве что при случайном чтении. На практике RAID 6 почти не используется, так как выход из строя сразу двух дисков – слишком редкий случай, а повысить надежность можно другими способами.
Рис. 143
У основных уровней RAID есть свои достоинства и недостатки. И вполне понятно, почему инженеры стали мечтать о таком RAID, который бы объединял достоинства нескольких уровней. Составной RAID массив – это чаще всего сочетание быстрого RAID 0 с надежным RAID 1, 3 или 5. Итоговый массив действительно обладает улучшенными характеристиками, но и платить за это приходится повышением стоимости и сложностью решения.
Составной RAID строится так: сначала диски разделяются на наборы (set). Затем на основе каждого из наборов строятся простые массивы. А завершается все объединением этих массивов в один мегамассив. Запись типа X+Y означает, что сначала диски объединены в RAID уровня X, а затем несколько RAID X массивов объединены в RAID уровня Y.
RAID 0+1 (01) и 1+0 (10)
RAID 0+1 часто называют «зеркалом страйпов», а RAID 1+0 – «страйпом зеркал» (нормальное русское «чередование» практически не используется, сменившись американизмом). В обоих случаях используются две технологии – чередование и зеркалирование, но результаты разные.
Рис. 144
RAID 0+1 обладает высокой скоростью работы и повышенной надежностью, поддерживается даже дешевыми RAID контроллерами и является недорогим решением. Но по надежности несколько лучше RAID 1+0. Так, массив из 10 дисков (5 по 2) может остаться работоспособным при отказе до 5 жестких дисков!
Основной недостаток этих массивов – низкий процент использования емкости накопителей – всего 50%. Но для домашних систем именно RAID 01 или 10 может оказаться оптимальным решением.
RAID 0+3 (03) и 3+0 (30)
С этими массивами у производителей наблюдается путаница. Довольно часто вместо 0+3 или 3+0 указывают более привлекательное число 5+3 (53). Не верьте!
По идее сочетание чередования и RAID 3 дает выигрыш в скорости, но он довольно мал. Зато система заметно усложняется. Наиболее простой уровень 3+0. Из двух массивов RAID 3 строится страйп, и минимальное количество требуемых дисков – 6. Получившийся RAID 3+0 с точки зрения надежности лучше, чем 0+3.
Рис. 145
Достоинства этих комбинаций – в довольно высоком проценте использования емкости дисков и высокой скорости чтения данных. Недостатки – высокая цена, сложность системы.
RAID 0+5 (05) и 5+0 (50)
Что будет, если объединить чередование с распределенной четностью с обыкновенным чередованием? Получится быстрая и надежная система. RAID 0+5 представляет собой набор страйпов, на основе которых построен RAID 5. Такая комбинация используется редко, так как практически не дает выигрыша ни в чем. Широкое распространение получил составной RAID массив 5+0.
Чаще всего это два массива RAID 5, объединенных в страйп. Такая конфигурация позволяет получить высокую производительность при работе с файлами малого размера. Типичный пример – использование в качестве WEB-сервера.
RAID 1+5 (15) и 5+1 (51)
Этот уровень построен на сочетании зеркалирования или дуплекса и чередования с распределенной четностью. Основная цель RAID 15 и 51 – значительное повышение надежности. Массив 1+5 продолжает работать при отказе трех накопителей, а 5+1 – даже при потере пяти из восьми жестких дисков! Платить приходится большим количеством неиспользуемой емкости дисков и общим удорожанием системы.
Чаще всего для построения RAID 5+1 используют два контроллера RAID 5, которые зеркалируют на программном уровне, что позволяет снизить затраты.
Рис. 146
JBOD
А что делать, если нужен просто один логический диск гигантского размера? Без всяких зеркалирований, чередования и четности? Тогда это уже не RAID, а JBOD – Just A Bunch Of Disks. Реализовать этот режим способен простейший контроллер или даже программная реализация контроллера.
Рис. 147
Есть ли у него преимущества, если JBOD не повышает ни быстродействия, ни надежности? Есть. По крайней мере, для работы используется все доступное пространство жестких дисков. И еще: в случае выхода из строя одного из жестких дисков, информация на других не повреждается.
Сведем основные характеристики наиболее распространенных уровней в таблицу.
Распространенные single RAID массивы
| RAID 0 | RAID 1 | RAID 3 | RAID 5 | RAID 6 | |
| Технология | Чередование | Зеркали- рование | Чередование, четность | Чередование, четность | Чередование, четность |
| Контроллер | Все | Все | Аппаратный | Аппаратный Hi-End | Специали- зированный |
| Кол-во жестких дисков | 2, 4 | 3 и больше | 3 и больше | 3 и больше | |
| Доступное рабочее пространство, % | 66 для 3, 75 для 4 | 66 для 3, 75 для 4 | 33 для 3 50 для 4 60 для 5 | ||
| Стойкость при отказе диска | Нет | Высокая | Высокая | Высокая | Очень высокая |
| Восстановление данных | Нет | Очень быстрое | Быстрое | Быстрое | Очень быстрое |
| Скорость случайного чтения | Очень хорошая | Хорошая | Хорошая | Очень хорошая | Очень хорошая |
| Скорость случайной записи | Очень хорошая | Хорошая | Плохая | Нормальная | Плохая |
| Скорость линейного чтения | Очень хорошая | Хорошая | Очень хорошая | Очень хорошая | Хорошая |
| Скорость линейной записи | Очень хорошая | Хорошая | Хорошая | Хорошая | Средняя |
| Цена | Самая низкая | Низкая | Средняя | Средняя | Высокая |
Сейчас, разобравшись в многообразии уровней RAID, мы можем посмотреть на представленную плату новыми глазами и понять ее основные характеристики.
На рис. 148 дорогой RAID контроллер, поддерживающий самые популярные уровни RAID. Он устанавливается в корпус сервера и работает с быстрыми SCSI дисками, максимальное количество которых в массиве – 15
Конечно, для домашнего использования такое устройство не предназначено. Но кто знает, что будет через несколько лет?..
Рис. 148