Что такое RAID массивы и зачем они нужны? Уровни RAID — краткие теоретические сведения Создание raid 0.

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

Что представляют собой дисковые массивы RAID?

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

В такой связке количество винчестеров в плане установки теоретически ограничений не имеет. Все зависит только от того, сколько подключений поддерживает материнская плата. Собственно, почему используются дисковые массивы RAID? Тут стоит обратить внимание на то, что в направлении развития технологий (относительно именно жестких дисков) они давно замерли на одной точке (скорость вращения шпинделя 7200 об./мин, размер кэша и т. д.). Исключение в этом плане составляют только модели SSD, но и у них в основном производится только увеличение объема. В то же время в производстве процессоров или планок оперативной памяти прогресс более ощутим. Таким образом, за счет применения RAID-массивов осуществляется увеличение прироста производительности при обращении к винчестерам.

Дисковые массивы RAID: виды, назначение

Что же касается самих массивов, условно их можно разделить по используемой нумерации (0, 1, 2 и т. д.). Каждый такой номер соответствует выполнению одной из заявленных функций.

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

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

RAID 0 (Striping)

Нулевые дисковые массивы по сути своей предназначены для ускорения доступа к хранимой информации (записи или считывания). Они, как правило, могут иметь в связке от двух до четырех винчестеров.

Но тут самая главная проблема состоит в том, что при удалении информации на одном из дисков она исчезает и на других. Информация записывается в виде блоков поочередно на каждый диск, а увеличение производительности прямо пропорционально количеству винчестеров (то есть, четыре диска в два раза быстрее двух). Но вот потеря информации связана только с тем, что блоки могут находиться на разных дисках, хотя пользователь в том же «Проводнике» видит файлы в нормальном отображении.

RAID 1

Дисковые массивы с единичным обозначением относятся к разряду Mirroring (зеркальное отображение) и служат для сохранения данных путем дублирования.

Грубо говоря, при таком положении дел пользователь несколько теряет в производительности, зато может быть точно уверен, что при исчезновении данных из одного раздела они будут сохранены в другом.

RAID 2 и выше

Массивы с номерами 2 и выше имеют двойное назначение. С одной стороны, они предназначены для записи информации, с другой - используются для коррекции ошибок.

Иными словами, дисковые массивы этого типа совмещают в себе возможности RAID 0 и RAID 1, но среди компьютерщиков особой популярностью не пользуются, хотя в основе их работы лежит использование

Что лучше использовать на практике?

Безусловно, если на компьютере предполагается использование ресурсоемких программ, например, современных игр, лучше использовать массивы RAID 0. В случае работы с важной информацией, которую нужно сохранить любым способом, придется обратиться к массивам RAID 1. В силу того, что связки с номерами от двух и выше популярными так и не стали, их применение обусловливается исключительно желанием пользователя. Кстати, применение нулевых массивов является практичным и в том случае, если пользователь часто загружает на компьютер файлы мультимедиа, скажем, фильмы или музыку с высоким битрейтом для формата MP3 или в стандарте FLAC.

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

Если Вы хотите увеличить быстродействие своей операционной системы в два раза, то наша статья для Вас!

Каким бы мощным не был Ваш компьютер, у него до сих пор остаётся одно слабое звено, это жёсткий диск, единственное устройство в системном блоке имеющее внутри механику. Вся мощь вашего процессора и 16 ГБ оперативной памяти будут сведены на нет устаревшим принципом работы обычного HDD. Не зря компьютер сравнивают с бутылкой, а жёсткий диск с её горлышком. Сколько бы воды в бутылке не было, выливаться она будет через узкое горлышко.

Известно два способа ускорить работу компьютера, первый, это купить дорогой твердотельный накопитель SSD, а второй, по максимуму использовать возможности вашей материнской платы, а именно, настроить RAID 0 массив из двух жёстких дисков. Кстати, а кто нам мешает создать RAID 0 массив из двух SSD!

Как настроить RAID 0 массив и установить на него Windows 10. Или как увеличить быстродействие дисковой системы в два раза

Как вы догадались, сегодняшняя статья о создании и настройке дискового массива RAID 0 состоящего из двух жёстких дисков. Задумал я её несколько лет назад и специально приобрёл два новых винчестера SATA III (6 Гбит/с) по 250 ГБ, но в силу сложности данной темы для начинающих пользователей пришлось её тогда отложить. Сегодня же, когда возможности современных материнских плат подошли к такому уровню функциональности, что RAID 0 массив может создать даже начинающий, я с большим удовольствием возвращаюсь к этой теме.

Примечание : Для создания RAID 0 массива можно взять диски любого объёма, например по 1 ТБ. В статье, для простого примера, взяты два диска по 250 ГБ, так как свободных дисков другого объёма не оказалось под руками.

Всем компьютерным энтузиастам важно знать, что RAID 0 («striping» или «страйпинг»), это – дисковый массив из двух или более жёстких дисков с отсутствием избыточности. Перевести данную фразу на обычный русский можно так: при установке в системный блок двух или более жёстких дисков (желательно одного объёма и одного производителя) и объединении их в дисковый массив RAID 0, информация на эти диски записывается/читается одновременно, что в два раза увеличивает производительность дисковых операций. Единственное условие - ваша материнская плата должна поддерживать технологию RAID 0 (в наше время практически все материнки поддерживают создание рейд-массивов).

Внимательный читатель может спросить: «А что такое отсутствие избыточности?»

Ответ. Технология виртуализации данных RAID разработана в первую очередь для безопасности данных и начинается с , который обеспечивает двойную надёжность (запись данных производится на два жёстких диска параллельно и при поломке одного винчестера вся информация остаётся в сохранности на другом HDD). Так вот, технология RAID 0 не записывает данные параллельно на два жёстких диска, RAID 0 разбивает при записи информацию на блоки данных и записывает её на несколько винчестеров одновременно, за счёт этого производительность дисковых операций вырастает в два раза, но при выходе из строя любого жёсткого диска вся информация на втором HDD теряется.

Вот по этому создатели технологии виртуализации RAID - Ренди Кац и Дэвид Паттерсон, не считали RAID 0 за какой-либо уровень RAID и назвали его "0", так как он не является безопасным из-за отсутствия избыточности.

Друзья, но согласитесь, что жёсткие диски ломаются не каждый день, а во вторых, с двумя HDD, объединёнными в RAID 0 массив, можно работать как с простым жёстким диском, то есть, если вы периодически будете делать операционной системы, то вы застрахуете себя от возможных проблем на 100%.

Итак, перед созданием RAID 0 массива предлагаю установить один из двух наших новых жёстких дисков SATA III (6 Гбит/с) в системный блок и проверить его на скорость чтения записи утилитами CrystalDiskMark и ATTO Disk Benchmark. Уже после создания RAID 0 массива и установки на него Windows 10 мы ещё раз проверим скорость чтения записи этими же утилитами и посмотрим, на самом ли деле данная технология увеличит быстродействие нашей операционной системы.

Для проведения эксперимента возьмём далеко не новую материнскую плату ASUS P8Z77-V PRO построенную на чипсете Intel Z77 Express. Преимущества материнских плат построенных на чипсетах Intel Z77, Z87 и более новых H87, B87 заключаются в продвинутой технологии Intel Rapid Storage Technology (RST), которая специально разработана для RAID 0-массивов даже из SSD.

Забегая вперёд скажу, результаты теста вполне обычные для обычного HDD самого современного интерфейса SATA III .

CrystalDiskMark

Является старейшей программой для тестирования производительности жёстких дисков, скачать можете на моём облачном хранилище, ссылка https://cloud.mail.ru/public/6kHF/edWWJwfxa

Программа производит тест случайного и последовательного чтения/записи на винчестер блоками по 512 и 4 кб.

Выбираем нужный накопитель, к примеру наш с Вами HDD под буквой C: и жмём All.

Итоговый результат. Максимальная скорость записи информации на жёсткий диск достигала 104 Мб/с, скорость чтения - 125 Мб/сек.

ATTO Disk Benchmark

Итоговый результат. Максимальная скорость записи информации на жёсткий диск достигала 119 Мб/с, скорость чтения - 121 Мб/сек.

Ну а теперь настраиваем наш RAID 0 массив в БИОС и устанавливаем на него операционную систему Windows 10.

Настройка RAID 0 массива

Подсоединяем к нашей материнской плате два одинаковых в объёме (250 ГБ) жёстких диска SATA III : WDC WD2500AAKX-00ERMA0 и WDC WD2500AAKX-001CA0.

На нашей материнке есть 4 порта SATA III (6 Гбит/с), использовать будем №5 и №6


Включаем компьютер и входим в БИОС с помощью нажатия клавиши DEL при загрузке.

Идём на вкладку Advanced, опция SATA Configuration.

Опцию SATA Mode Selection выставляем в положение RAID

Для сохранения изменений жмём F10 и выбираем Yes. Происходит перезагрузка.

Если вы подключили в БИОС технологию RAID, то при следующей загрузке на экране монитора появится предложение нажать клавиатурное сочетание (CTRL-I ), для входа в панель управления конфигурации RAID.

Ещё в данном окне отображены подключенные к портам 4 и 5 наши жёсткие диски WDC, пока находящихся не в RAID-массиве (Non-RAID Disk). Жмём CTRL-I и входим в панель настроек.


В начальном окне панели нам нужна первая вкладкаCreate a RAID Volume (Создать том RAID), чтобы войти в неё жмём Enter.

Здесь производим основные настройки нашего будущего RAID 0 массива.

Name : (Имя RAID-массива).

Нажмите на клавишу "пробел" и введите имя.

Пусть будет "RAID 0 new" и жмём Enter. Передвигаемся ниже с помощью клавиши Tab.

RAID Level : (Уровень RAID).

Мы создаём RAID 0 (stripe) - дисковый массив из двух жёстких дисков с отсутствием избыточности. Выберите этот уровень стрелками на клавиатуре и нажмите Enter.

Опускаемся ниже с помощью клавиши Tab.

Stripe Size :

Оставляем как есть.

Capacity : (объём)

Выставляется автоматически. Объём двух наших винчестеров 500 ГБ, так как мы используем уровень RAID 0 (stripe) и два наших жёстких диска работают как один. Ж мём Enter.

Больше ничего не меняем и передвигаемся к последнему пункту Create Volume и жмём Enter.

Появляется предупреждение:

WARNING: ALL DATA ON SELECTED DISKS WILL BE LOST.

Are you sure you want to create this volume? (Y/N):

ВНИМАНИЕ: ВСЕ ДАННЫЕ на выбранных дисках будут потеряны.

Вы уверены, что хотите создать этот объем? (Y / N):

Жмём Y (Да) на клавиатуре.

RAID 0 массив создан и уже функционирует, находится со статусом Normal (нормальный). Для выхода из панели настроек жмём на клавиатуре клавишу Esc.

Are you sure you want to exit (Вы уверены что хотите выйти? Нажимаем Y (Да). Происходит перезагрузка.

Теперь при каждой загрузке компьютера на экране монитора на несколько секунд будет появляться информация о состоянии нашего RAID 0 массива и предложение нажать сочетание клавиш (CTRL-I), для входа в панель управления конфигурации RAID.

Установка Windows 10 на RAID 0 массив

Подсоединяем к нашему системному блоку , перезагружаем компьютер, входим в БИОС и меняем приоритет загрузки на флешку. А можно просто войти в меню загрузки компьютера и выбрать загрузку с установочной флешки Windows 10 (в нашем случае Kingston). В меню загрузки можно увидить созданный нами RAID 0 массив с названием "RAID 0 new".

Теперь посмотрим какие есть виды и чем они отличаются.

Калифорнийский университет в Беркли представилследующие уровни спецификации RAID, которые были приняты как стандарт де-факто:

  • RAID 0 - дисковый массив повышенной производительности с чередованием, без отказоустойчивости;
  • - зеркальный дисковый массив;
  • RAID 2 зарезервирован для массивов, которые применяют код Хемминга;
  • RAID 3 и 4 - дисковые массивы с чередованием и выделенным диском чётности;
  • - дисковый массив с чередованием и «невыделенным диском чётности»;
  • - дисковый массив с чередованием, использующий две контрольные суммы, вычисляемые двумя независимыми способами;
  • - массив RAID 0, построенный из массивов RAID 1;
  • - массив RAID 0, построенный из массивов RAID 5;
  • - массив RAID 0, построенный из массивов RAID 6.

Аппаратный RAID-контроллер может поддерживать несколько разных RAID-массивов одновременно, суммарное количество жёстких дисков которых не превышает количество разъёмов для них. При этом контроллер, встроенный в материнскую плату, в настройках BIOS имеет всего два состояния (включён или отключён), поэтому новый жёсткий диск, подключённый в незадействованный разъём контроллера при активированном режиме RAID, может игнорироваться системой, пока он не будет ассоциирован как ещё один RAID-массив типа JBOD (spanned), состоящий из одного диска.

RAID 0 (striping - «чередование» )

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

(mirroring - «зеркалирование» )

массив из двух дисков, являющихся полными копиями друг друга. Не следует путать с массивами RAID 1+0, RAID 0+1 и RAID 10, в которых используется более двух дисков и более сложные механизмы зеркалирования.

Обеспечивает приемлемую скорость записи и выигрыш по скорости чтения при распараллеливании запросов.

Имеет высокую надёжность - работает до тех пор, пока функционирует хотя бы один диск в массиве. Вероятность выхода из строя сразу двух дисков равна произведению вероятностей отказа каждого диска, т.е. значительно ниже вероятности выхода из строя отдельного диска. На практике при выходе из строя одного из дисков следует срочно принимать меры - вновь восстанавливать избыточность. Для этого с любым уровнем RAID (кроме нулевого) рекомендуют использовать диски горячего резерва.

Похожий на RAID10 вариант распределения данных по дискам, допускающий использование нечётного числа дисков (минимальное количество - 3)

RAID 2, 3, 4

различные варианты распределенного хранения данных с дисками, выделенными под коды четности и различными размерами блока. В настоящее время практически не используются из-за невысокой производительности и необходимости выделять много дисковой емкости под хранение кодов ЕСС и/или четности.

Основным недостатком уровней RAID от 2-го до 4-го является невозможность производить параллельные операции записи, так как для хранения информации о чётности используется отдельный контрольный диск. RAID 5 не имеет этого недостатка. Блоки данных и контрольные суммы циклически записываются на все диски массива, нет асимметричности конфигурации дисков. Под контрольными суммами подразумевается результат операции XOR (исключающее или). Xor обладает особенностью, которая даёт возможность заменить любой операнд результатом, и, применив алгоритм xor , получить в результате недостающий операнд. Например: a xor b = c (где a , b , c - три диска рейд-массива), в случае если a откажет, мы можем получить его, поставив на его место c и проведя xor между c и b : c xor b = a. Это применимо вне зависимости от количества операндов: a xor b xor c xor d = e . Если отказывает c тогда e встаёт на его место и проведя xor в результате получаем c : a xor b xor e xor d = c . Этот метод по сути обеспечивает отказоустойчивость 5 версии. Для хранения результата xor требуется всего 1 диск, размер которого равен размеру любого другого диска в raid.

Достоинства

RAID5 получил широкое распространение, в первую очередь, благодаря своей экономичности. Объём дискового массива RAID5 рассчитывается по формуле (n-1)*hddsize, где n - число дисков в массиве, а hddsize - размер наименьшего диска. Например, для массива из четырех дисков по 80 гигабайт общий объём будет (4 - 1) * 80 = 240 гигабайт. На запись информации на том RAID 5 тратятся дополнительные ресурсы и падает производительность, так как требуются дополнительные вычисления и операции записи, зато при чтении (по сравнению с отдельным винчестером) имеется выигрыш, потому что потоки данных с нескольких дисков массива могут обрабатываться параллельно.

Недостатки

Производительность RAID 5 заметно ниже, в особенности на операциях типа Random Write (записи в произвольном порядке), при которых производительность падает на 10-25% от производительности RAID 0 (или RAID 10), так как требует большего количества операций с дисками (каждая операция записи, за исключением так называемых full-stripe write-ов, сервера заменяется на контроллере RAID на четыре - две операции чтения и две операции записи). Недостатки RAID 5 проявляются при выходе из строя одного из дисков - весь том переходит в критический режим (degrade), все операции записи и чтения сопровождаются дополнительными манипуляциями, резко падает производительность. При этом уровень надежности снижается до надежности RAID-0 с соответствующим количеством дисков (то есть в n раз ниже надежности одиночного диска). Если до полного восстановления массива произойдет выход из строя, или возникнет невосстановимая ошибка чтения хотя бы на еще одном диске, то массив разрушается, и данные на нем восстановлению обычными методами не подлежат. Следует также принять во внимание, что процесс RAID Reconstruction (восстановления данных RAID за счет избыточности) после выхода из строя диска вызывает интенсивную нагрузку чтения с дисков на протяжении многих часов непрерывно, что может спровоцировать выход какого-либо из оставшихся дисков из строя в этот наименее защищенный период работы RAID, а также выявить ранее не обнаруженные сбои чтения в массивах cold data (данных, к которым не обращаются при обычной работе массива, архивные и малоактивные данные), что повышает риск сбоя при восстановлении данных.

Минимальное количество используемых дисков равно трём.

RAID 6 - похож на RAID 5, но имеет более высокую степень надёжности - под контрольные суммы выделяется ёмкость 2-х дисков, рассчитываются 2 суммы по разным алгоритмам. Требует более мощный RAID-контроллер. Обеспечивает работоспособность после одновременного выхода из строя двух дисков - защита от кратного отказа. Для организации массива требуется минимум 4 диска. Обычно использование RAID-6 вызывает примерно 10-15% падение производительности дисковой группы, относительно RAID 5, что вызвано большим объёмом обработки для контроллера (необходимость рассчитывать вторую контрольную сумму, а также читать и перезаписывать больше дисковых блоков при записи каждого блока).

RAID 0+1

Под RAID 0+1 может подразумеваться в основном два варианта:

  • два RAID 0 объединяются в RAID 1;
  • в массив объединяются три и более диска, и каждый блок данных записывается на два диска данного массива; таким образом, при таком подходе, как и в «чистом» RAID 1, полезный объём массива составляет половину от суммарного объёма всех дисков (если это диски одинаковой ёмкости).

RAID 10 (1+0)

RAID 10 - зеркалированный массив, данные в котором записываются последовательно на несколько дисков, как вRAID 0. Эта архитектура представляет собой массив типа RAID 0, сегментами которого вместо отдельных дисков являются массивы RAID 1. Соответственно, массив этого уровня должен содержать как минимум 4 диска (и всегда чётное количество). RAID 10 объединяет в себе высокую отказоустойчивость и производительность.

Утверждение, что RAID 10 является самым надёжным вариантом для хранения данных вполне обосновано тем, что массив будет выведен из строя после выхода из строя всех накопителей в одном и том же массиве. При одном вышедшем из строя накопителе, шанс выхода из строя второго в одном и том же массиве равен 1/3*100=33%. RAID 0+1 выйдет из строя при двух накопителях, вышедших из строя в разных массивах. Шанс выхода из строя накопителя в соседнем массиве равен 2/3*100=66%, однако так как накопитель в массиве с уже вышедшим из строя накопителем уже не используется, то шанс того, что следующий накопитель выведет из строя массив целиком равен 2/2*100=100%

массив, аналогичный RAID5, однако кроме распределенного хранения кодов четности используется распределение резервных областей - фактически задействуется жесткий диск, который можно добавить в массив RAID5 в качестве запасного (такие массивы называют 5+ или 5+spare). В RAID 5 массиве резервный диск простаивает до тех пор, пока не выйдет из строя один из основных жестких дисков, в то время как в RAID 5EE массиве этот диск используется совместно с остальными HDD все время, что положительно сказывается на производительность массива. К примеру, массив RAID5EE из 5 HDD сможет выполнить на 25% больше операций ввода/вывода за секунду, чем RAID5 массив из 4 основных и одного резервного HDD. Минимальное количество дисков для такого массива - 4.

объединение двух(или более, но это крайне редко применяется) массивов RAID5 в страйп, т.е. комбинация RAID5 и RAID0, частично исправляющая главный недостаток RAID5 - низкую скорость записи данных за счёт параллельного использования нескольких таких массивов. Общая ёмкость массива уменьшается на ёмкость двух дисков, но, в отличие от RAID6, без потери данных такой массив переносит отказ лишь одного диска, а минимально необходимое число дисков для создания массива RAID50 равно 6. Наряду с RAID10, это наиболее рекомендуемый уровень RAID для использования в приложениях, где требуется высокая производительность в сочетании приемлемой надёжностью.

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

RAID 00


RAID 00 встречается весьма редко, я с ним познакомился на контроллерах LSI. Группа дисков RAID 00 - это составная группа дисков, которая создает чередующийся набор из серии
дисковых массивов RAID 0. RAID 00 не обеспечивает избыточности данных , но наряду с RAID 0, предлагает лучшую производительность любого уровня RAID. RAID 00 разбивает данные на меньшие сегменты, а затем чередует сегменты данных на каждом диске в сторадж группе. Размер каждого сегмента данных определяется размером полосы. RAID 00 предлагает высокая пропускная способность. Уровень RAID 00 не является отказоустойчивым. Если диск в группе дисков RAID 0 выходит из строя, весь
виртуальный диск (все диски, связанные с виртуальным диском) выйдет из строя. Разбивая большой файл на более мелкие сегменты, контроллер RAID может использовать оба SAS
контроллера для чтения или записи файла быстрее. RAID 00 не предполагает четности расчеты усложняют операции записи. Это делает RAID 00 идеальным для
приложения, которые требуют высокой пропускной способности, но не требуют отказоустойчивости. Может состоять от 2 до 256 дисков.

Что быстрее RAID 0 или RAID 00?


Я провел свое тестирование описанное в статье про оптимизацию скорости твердотельных дисков на LSI контроллерах и получил вот такие вот цифры на массивах из 6-ти SSD

Буквально на днях я, наконец-то, произвёл свой долгожданный маленький "апгрейд": в довесок к уже эксплуатирующемуся винчестеру SEAGATE ST3120026AS был приобретён SEAGATE ST3120813AS. Суть покупки, как мне казалось, должна была разрешить две моих насущных проблемы, а именно: сложившуюся в последнее время катастрофическую нехватку дискового пространства или проще говоря свободных "ГИГО-ШМИГО байтов" и крайне невысокую (по моим меркам) скорость работы дисковой подсистемы. С первой проблемой обстоит полная арифметическая ясность сводимая к задачке уровня сложения. А вот вторая, являющаяся частичным следствием первой, предполагала создание некоего массива носителей, с целью повышения быстродействия операций чтения и записи. И решил я сделать RAID.....

Я вкратце напомню об основных положениях, описывающих функционирование RAID - массива нулевого уровня, как наиболее подходящего в моём конкретном случае. Начну с приятного, т.е с перечисления положительных сторон RAID массива 0 уровня :

ЭТАП 1 - Плюсы и минусы

Теоретически двукратный прирост в скорости работы дисковой подсистемы (читай ускорение операций чтения и записи), на "практическом полигоне" даёт результат далёкий от заоблачного (двойного прироста) и составляет от 30 до 50% процентов, что всё же весьма неплохо, учитывая тот факт, что большинство производителей изначально закладывают в южный мост поддержку сей возможности и конечному потребителю вроде меня не приходится выкладывать деньги за отдельную плату расширения. Для наглядности приведу агит-листок от Intel-а...

Картинка на мой взгляд весьма коммерчески привлекательна, но есть в ней один изъян - цифры завышены. Выраженное в относительных единицах (условная скорость устройств относительно скорости одного IDE винта) быстродействие измерено в тестовых пакетах, а следовательно не может отражать реальной картины хаотичной работы обыкновенного пользователя на компьютере. Да, безусловно прирост есть и составляет как я уже упоминал ранее от 30 до 50 процентов в зависимости специфики производимой на ПК работы, но пара SATA винтов заведённых в RAID 0, в реальной жизни, как мне кажется редко когда обставят обыкновенный IDE винт на 76%, если он только не покрыт бэдами...."Ехаем" далее: картинка нумбер два....

На схеме изображён 865PE собственной персоной, хочу обратить внимание на скорости, или точнее сказать пропускную способность каналов... Поясню, так например согласно рисунку "проц" "обЧается" c северным мостом на максимальной теоретической скорости 6.4, 4.3, 3.2GB/s, разброс скоростей связан с различными вариантами частоты системной шины: 800/533/400MHz, далее с памятью обмен происходит на 6.4GB/S, с видеокартой на 2GB/s, а вот южный мост с SATA винтом будет работать на максимально возможных 150 увы MB/s. Таким образом здесь в пору упомянуть о красивом словосочетании типа "бутылочного горлышка", что в переводе на нормальный означает только одно - узким местом в любом ПК изначально является дисковая подсистема. Исходя из этого и возвращаясь к вышенаписанному становится ясно, что даже 30-50 процентов прироста - это огромный плюс к быстродействию всей системы. "Ехаем" далее: картинка нумбер три....

Картинка ничто иное как подтверждение самой возможности - взято из инструкции к материнской плате ASUS P4P800, индекс R в маркировке южного моста как раз указывает на это. "Ехаем" далее: картинка нумбер 4....

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

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

ЭТАП 2 - Что требуется для....

Для создания RAID массива нулевого уровня необходимо наличие минимум двух накопителей идентичной ёмкости, одинаковых интерфейсов. Желательно, а я бы сказал обязательно, чтобы накопители были максимально схожи в техническом плане, т.е параметры влияющие на быстродействие устройства были схожими (размер буфера, среднее время поиска и т.д). Производители материнских плат предлагающие функции поддержки RAID массивов у своих "детищ" настоятельно советуют использовать в массиве только идентичные диски! И этот призыв имеет под собой весьма серьёзную "почву", в первую очередь это обусловлено достижением максимального быстродействия (абстрагируемся от реальности и считаем, что два идентичных накопителя и работать будут одинаково) и в тоже время существенным снижением проблем с последующей эксплуатацией массива. Логично полагать, что RAID, созданный из разнородных (не в плане ёмкости и интерфейса подключения, а в смысле технических характеристик) дисков будет в какой то степени "кривобоким" одно из устройств, обладающее значительно меньшим быстродействием будет своеобразно подтормаживать весь массив. Не скрою, это всего лишь мои догадки, но уверен на "реальных" тестовых приложениях они воплотятся в существенное снижение быстродействия по сравнению с массивом из однородных накопителей. Далее необходима поддержка создания RAID массива южным мостом материнской платы. Что касается мощного блока питания, то ситуация ни коем образом не напоминает режим SLI, для которого требуются поистине "зверинные" мощности блока или блоков питания. Если только у Вас не китайский нонейм 250-ти ватт или на 100% загруженная машина, то по энергетическим требованиям Вы скорее всего пройдёте. Не будучи голословным приведу пример своей машины, в качестве блока питания функционирует 300 ваттный PowerMan, при этом процессор Pentium 4 2.8GHz (Presscott степпинг C0, греется жутко), разогнан до 3,36, гиг оперативы 2-мя планками по 512 KingStone, видеокарта читаем , Audigy, тв тюнер Aver Media 203-й, DVD-RW привод, 2-ва упомянутых выше винта, и мощности хватает....

ЭТАП 3 - Установка и создание RAID-массива 0-го уровня

Подключаем два SATA диска интерфейсными кабелями к материнской плате. Все последующие манипуляции производятся на программном ровне. Прилагаемые принтскрины являются выдержками из инструкции по установке и настройке РЭЙДА, свои увы снять не могу нет цифровика:(. Первым делом заходим в биос.....

Переводим выделенную опцию в YES, тем самым активировав поддержку RAID функции на уровне биоса. Сохраняемся и выходим, после перезагрузки наблюдаем картинку....


Смысл отображаемой информации сводится к следующему: в РЭЙД массив не включено ни одного диска, а не рэйдовские "висят" на портах 0 и 1, с указанием их маркировки, статуса, и возможности загрузки с них. Далее предлагается жмакнуть CTRL+I для "посещения" утилиты конфигурирования. Что мы собственно говоря и делаем:

Коротко о меню:

1. Создание РЭЙД массива .

2. Удаление РЭЙД массива.

3. Сброс дисков к исходному, не Рэйдовскому состоянию.

Выбираем первый пункт и вперёд....

На этой вкладке выбираем размер "полосы"(перевод с англ:), наше - 128KB - наилучшая производительность для большинства домашних компьютеров и рабочих станций. Далее выбираем тип РЭЙДА - RAID 0 и в заключение жмакаем Create Volume.

Действительно хотите создать РЭЙД массив - такие настойчивые предупреждения типа предостережения, как будто мы Гагарина в космос запускаем. Жмакаем "ЕНТЕР".....Получаем результат...

Единственное примечание - при установке Windows XP на первом этапе жмём F6, когда спросит, и устанавливаем драйвера с, заранее созданной, дискетты для нормального определения РЭЙДА. А вот как выглядит визуальное подтверждение того, что мои накопители работают в РЭЙД массиве..

ЭТАП 4 - Итоги (весьма краткие)

Не самый навороченный тестовый пакет показал следующий результат:

Нужно отметить, что показатели SATA 150 и ATA UltraDMA 6 по моим наблюдения чисто гипотетические, так как по памяти помню, что полученные мною значения для данных позиций были всегда ниже "образцовых", так для SATA 150, в пору когда у меня был один винт от SEAGATE результат был где то в районе 126-135MB/s. Вот такие пироги..... Так, работая сейчас на системе с RAID-массивом, могу с полной уверенностью сказать, о том, что это того стоит, прирост не колоссальный и не привносит ошеломляющего ускорения в систему, но он стабилен и весьма заметен и ощутим не только "тестовым глазом"...

p.s Да и не забудьте посадить на южный мост радиатор:)

Маслёнков Андрей

Практика эксплуатации показывает, что рэйд массив нулевого уровня даёт превосходные скоростные показатели, что находит косвенное подтверждение в результатах синтетических тестов, присланных мне посетителем сайта Игорем Александровичем на его системе, конфигурация которой представлена ниже:

"Материнка: ASUS P5E3 WS Pro (RTL) Socket775 2xPCI-E+2xGbLAN+1394 SATA RAID ATX 4DDR-III

Процессор: CPU Intel Core 2 Duo E8500 3.16 ГГц/ 6Мб/ 1333МГц LGA775
OEM! + кулер Scythe Ninja2 Socket 775/478/754/939/940/AM2(20.5дБ, 1000об/мин, Al+тепловые трубки) 2732

Видеокарта: 512Mb DDR-5 ASUS EAH4870 DK/HTDI/512MD5 (RTL) DualDVI+TV Out

Винт: 2 шт. HDD 150 Gb SATA-II 300 Western Digital VelociRaptor 10000rpm 16Mb

Память: Corsair XMS3 DDR-III DIMM 4Gb KIT 2*2Gb

В "одиночном забеге" получены следущие результаты:

В "спарке" винтов вида RAID0:

Сергей Пахомов

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

История создания

Впервые термин «RAID-массив» появился в 1987 году, когда американские исследователи Паттерсон, Гибсон и Катц из Калифорнийского университета Беркли в своей статье «Избыточный массив недорогих дисков» (“A Case for Redundant Arrays of Inexpensive Discs, RAID”) описали, каким образом можно объединить несколько дешевых жестких дисков в одно логическое устройство так, чтобы в результате повышались емкость и быстродействие системы, а отказ отдельных дисков не приводил к отказу всей системы.

С момента выхода этой статьи прошло уже более 20 лет, но технология построения RAID-массивов не утратила актуальности и сегодня. Единственное, что изменилось с тех пор, — это расшифровка аббревиатуры RAID. Дело в том, что первоначально RAID-массивы строились вовсе не на дешевых дисках, поэтому слово Inexpensive (недорогие) поменяли на Independent (независимые), что больше соответствовало действительности.

Принцип действия

Итак, RAID — это избыточный массив независимых дисков (Redundant Arrays of Independent Discs), на который возлагается задача обеспечения отказоустойчивости и повышения производительности. Отказоустойчивость достигается за счет избыточности. То есть часть емкости дискового пространства отводится для служебных целей, становясь недоступной для пользователя.

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

Совместную работу дисков в массиве можно организовать с помощью либо параллельного, либо независимого доступа. При параллельном доступе дисковое пространство разбивается на блоки (полоски) для записи данных. Аналогично информация, подлежащая записи на диск, разбивается на такие же блоки. При записи отдельные блоки записываются на разные диски, причем запись нескольких блоков на различные диски происходит одновременно, что и приводит к увеличению производительности в операциях записи. Нужная информация также считывается отдельными блоками одновременно с нескольких дисков, что тоже способствует росту производительности пропорционально количеству дисков в массиве.

Следует отметить, что модель с параллельным доступом реализуется только при условии, что размер запроса на запись данных больше размера самого блока. В противном случае осуществлять параллельную запись нескольких блоков практически невозможно. Представим ситуацию, когда размер отдельного блока составляет 8 Кбайт, а размер запроса на запись данных — 64 Кбайт. В этом случае исходная информация нарезается на восемь блоков по 8 Кбайт каждый. Если имеется массив из четырех дисков, то одновременно можно записать четыре блока, или 32 Кбайт, за один раз. Очевидно, что в рассмотренном примере скорость записи и скорость считывания окажутся в четыре раза выше, чем при использовании одного диска. Это справедливо лишь для идеальной ситуации, однако размер запроса далеко не всегда кратен размеру блока и количеству дисков в массиве.

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

В соответствии с различными типами доступа существуют и разные типы RAID-массивов, которые принято характеризовать уровнями RAID. Кроме типа доступа, уровни RAID различаются способом размещения и формирования избыточной информации. Избыточная информация может либо размещаться на специально выделенном диске, либо распределяться между всеми дисками. Способов формирования этой информации достаточно много. Простейший из них — это полное дублирование (100-процентная избыточность), или зеркалирование. Кроме того, используются коды с коррекцией ошибок, а также вычисление четности.

Уровни RAID-массивов

В настоящее время существует несколько RAID-уровней, которые можно считать стандартизованными, — это RAID 0, RAID 1, RAID 2, RAID 3, RAID 4, RAID 5 и RAID 6.

Применяются также различные комбинации RAID-уровней, что позволяет объединить их достоинства. Обычно это комбинация какого-либо отказоустойчивого уровня и нулевого уровня, применяемого для повышения производительности (RAID 1+0, RAID 0+1, RAID 50).

Отметим, что все современные RAID-контроллеры поддерживают функцию JBOD (Just a Bench Of Disks), которая не предназначена для создания массивов, — она обеспечивает возможность подключения к RAID-контроллеру отдельных дисков.

Нужно отметить, что интегрированные на материнские платы для домашних ПК RAID-контроллеры поддерживают далеко не все RAID-уровни. Двухпортовые RAID-контроллеры поддерживают только уровни 0 и 1, а RAID-контроллеры с большим количество портов (например, 6-портовый RAID-контроллер, интегрированный в южный мост чипсета ICH9R/ICH10R) — также уровни 10 и 5.

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

RAID 0

RAID уровня 0, строго говоря, не является избыточным массивом и соответственно не обеспечивает надежности хранения данных. Тем не менее данный уровень активно применяется в случаях, когда необходимо обеспечить высокую производительность дисковой подсистемы. При создании RAID-массива уровня 0 информация разбивается на блоки (иногда эти блоки называют страйпами (stripe)), которые записываются на отдельные диски, то есть создается система с параллельным доступом (если, конечно, это позволяет размер блока). Благодаря возможности одновременного ввода-вывода с нескольких дисков, RAID 0 обеспечивает максимальную скорость передачи данных и максимальную эффективность использования дискового пространства, поскольку не требуется места для хранения контрольных сумм. Реализация этого уровня очень проста. В основном RAID 0 применяется в тех областях, где требуется быстрая передача большого объема данных.

RAID 1 (Mirrored disk)

RAID уровня 1 — это массив двух дисков со 100-процентной избыточностью. То есть данные при этом просто полностью дублируются (зеркалируются), за счет чего достигается очень высокий уровень надежности (как, впрочем, и стоимости). Отметим, что для реализации уровня 1 не требуется предварительно разбивать диски и данные на блоки. В простейшем случае два диска содержат одинаковую информацию и являются одним логическим диском. При выходе из строя одного диска его функции выполняет другой (что абсолютно прозрачно для пользователя). Восстановление массива выполняется простым копированием. Кроме того, этот уровень удваивает скорость считывания информации, так как эта операция может выполняться одновременно с двух дисков. Подобная схема хранения информации используется в основном в тех случаях, когда цена безопасности данных гораздо выше стоимости реализации системы хранения.

RAID 5

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

Предположим, что массив содержит n дисков, а размер страйпа d . Для каждой порции из n-1 страйпов рассчитывается контрольная сумма p .

Cтрайп d1 записывается на первый диск, страйп d2 — на второй и так далее вплоть до страйпа dn-1 , который записывается на (n -1)-й диск. Далее на n -й диск записывается контрольная сумма pn , и процесс циклически повторяется с первого диска, на который записывается страйп dn .

Процесс записи (n-1) страйпов и их контрольной суммы производится одновременно на все n дисков.

Для вычисления контрольной суммы используется поразрядная операция «исключающего ИЛИ» (XOR), применяемая к записываемым блокам данных. Так, если имеется n жестких дисков, d — блок данных (страйп), то контрольная сумма рассчитывается по следующей формуле:

pn = d1 +d2 + ... + d1-1.

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

В качестве иллюстрации рассмотрим блоки размером по четыре бита. Пусть имеются всего пять дисков для хранения данных и записи контрольных сумм. Если есть последовательность битов 1101 0011 1100 1011, разбитая на блоки по четыре бита, то для расчета контрольной суммы необходимо выполнить следующую поразрядную операцию:

1101 + 0011 + 1100 + 1011 = 1001.

Таким образом, контрольная сумма, записываемая на пятый диск, равна 1001.

Если один из дисков, например четвертый, вышел из строя, то блок d4 = 1100 окажется недоступным при считывании. Однако его значение легко восстановить по контрольной сумме и по значениям остальных блоков с помощью все той же операции «исключающего ИЛИ»:

d4 = d1 +d2 +d4 +p5.

В нашем примере получим:

d4 = (1101) + (0011) + (1100) + (1011) = 1001.

В случае RAID 5 все диски массива имеют одинаковый размер, однако общая емкость дисковой подсистемы, доступной для записи, становится меньше ровно на один диск. Например, если пять дисков имеют размер 100 Гбайт, то фактический размер массива составляет 400 Гбайт, поскольку 100 Гбайт отводится на контрольную информацию.

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

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

RAID 10

Уровень RAID 10 представляет собой некое сочетание уровней 0 и 1. Минимально для этого уровня требуются четыре диска. В массиве RAID 10 из четырех дисков они попарно объединяются в массивы уровня 0, а оба этих массива как логические диски объединяются в массив уровня 1. Возможен и другой подход: первоначально диски объединяются в зеркальные массивы уровня 1, а затем логические диски на основе этих массивов — в массив уровня 0.

Intel Matrix RAID

Рассмотренные RAID-массивы уровней 5 и 1 редко используются в домашних условиях, что связано прежде всего с высокой стоимостью подобных решений. Наиболее часто для домашних ПК применяется именно массив уровня 0 на двух дисках. Как мы уже отмечали, RAID уровня 0 не обеспечивает безопасности хранения данных, а потому конечные пользователи сталкиваются с выбором: создавать быстрый, но не обеспечивающий надежности хранения данных RAID-массив уровня 0 или же, увеличивая стоимость дискового пространства в два раза, — RAID-массив уровня 1, который обеспечивает надежность хранения данных, однако не позволяет получить существенного выигрыша в производительности.

Для того чтобы разрешить эту нелегкую проблему, корпорация Intel разработала технологию Intel Matrix Storage, позволяющую объединить достоинства массивов уровней 0 и 1 всего на двух физических дисках. А для того, чтобы подчеркнуть, что речь в данном случае идет не просто о RAID-массиве, а о массиве, сочетающем в себе и физические и логические диски, в названии технологии вместо слова «массив» используется слово «матрица».

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

Рассмотрим простой пример RAID-матрицы из двух дисков по 120 Гбайт каждый. Любой из дисков можно разбить на два логических диска, например по 40 и 80 Гбайт. Далее два логических диска одного размера (например, по 40 Гбайт) можно объединить в RAID-матрицу уровня 1, а оставшиеся логические диски — в RAID-матрицу уровня 0.

В принципе, используя два физических диска, также можно создать всего одну или две RAID-матрицы уровня 0, но вот получить только матрицы уровня 1 невозможно. То есть если в системе имеются всего два диска, то технология Intel Matrix Storage позволяет создавать следующие типы RAID-матриц:

  • одна матрица уровня 0;
  • две матрицы уровня 0;
  • матрица уровня 0 и матрица уровня 1.

Если в системе установлены три жестких диска, то возможно создание следующих типов RAID-матриц:

  • одна матрица уровня 0;
  • одна матрица уровня 5;
  • две матрицы уровня 0;
  • две матрицы уровня 5;
  • матрица уровня 0 и матрица уровня 5.

Если в системе установлены четыре жестких диска, то дополнительно имеется возможность создать RAID-матрицу уровня 10, а также комбинации уровня 10 и уровня 0 или 5.