RAID расшифровывается как Redundant Array of Independent Disks или «избыточный массив независимых дисков». Это технология виртуализации, которая позволяет объединять несколько дисков в логический массив. RAID используют для увеличения отказоустойчивости и производительности сервера. Некоторые типы RAID отличаются надежностью, другие скоростью, а некоторые совмещают в себе эти качества.
RAID 0 работает по принципу поблочного чередования (striping). Все диски объединяются в массив, а данные разбиваются на одинаковые блоки, которые по очереди равномерно записываются на все накопители. Благодаря этому производительность возрастает пропорционально количеству дисков.
Итоговая производительность массива определяется по самому медленному из дисков, поэтому лучше использовать устройства с одинаковой скоростью
Высокая скорость и объем, однако, достигаются ценой отказоустойчивости. На этом уровне не используется резервирование, поэтому при отказе одного из дисков, все данные массива теряются, а восстановить их крайне трудно. Поэтому RAID 0 не рекомендуется использовать на серверах с критически важными данными.
RAID 0 проявляет себя лучше всего при работе в приложениях для быстрого обмена данными или в хранилищах временных файлов, например, кэша.
RAID 1 работает по принципу зеркалирования (mirroring). Массив собирается из двух и более дисков, которые дублируют друг друга. Таким образом создаются пары накопителей с идентичными данными, что помогает решить проблему с отказоустойчивостью — если один из дисков выйдет из строя, данные останутся на его точной копии. При высокой отказоустойчивости RAID 1 уступает в емкости и производительности. Данные необходимо записывать одновременно на каждую пару дисков, а часть общего объема памяти уходит на резервирование.
RAID 1 подойдет, если нужно сделать хранение данных на сервере более надежным.
RAID 5 использует принцип чередования с распределенной контрольной суммой. Для создания массива нужно как минимум три диска. Данные разбиваются на блоки и равномерно распределяются между дисками, как и в RAID 0. Однако в этом случае в каждом блоке выделяется диск четности. Благодаря распределению четности между блоками, высокая отказоустойчивость достигается без больших потерь в скорости чтения и записи. Важно отметить, что скорость записи в этой конфигурации сильно зависит от используемого RAID-контроллера.
RAID 6 развивает идеи, заложенные в RAID 5 и использует принцип чередования с двумя контрольными суммами. Для создания такого массива потребуется как минимум четыре диска, два из которых отводятся для записи четности. Такой массив обладает наивысшей отказоустойчивостью и допускает отказ сразу двух дисков. Однако при этом RAID 6 отличается очень низкой скоростью записи, что ограничивает сферы его применения.
RAID 6 используется в системах, где нужно наиболее надежное хранение информации, например, в архивах или системах безопасности.
RAID 10 сочетает в себе принципы RAID 1 (зеркалирование) и RAID 0 (чередование). Для его создания нужно как минимум четыре диска, причем их количество всегда должно быть четным. Из них собирается несколько массивов RAID 1, которые впоследствии объединяются в массив RAID 0. При такой конфигурации даже если один или несколько дисков выйдут из строя, все данные сохранятся. При этом, как и в случае с RAID 1, часть общего объема памяти уходит на резервирование.
RAID 10 — гибкое решение, которое сочетает отказоустойчивость с высокой скоростью чтения и записи.
Уровень RAID | Принцип работы | Количество дисков | Описание | Преимущества | Недостатки | Восстановление |
---|---|---|---|---|---|---|
RAID 0 | Чередование | от 2 | Данные равномерно распределяются между всеми дисками | Использует 100% дискового пространства; высокая скорость чтения и записи | Нулевая отказоустойчивость | Если хотя бы один диск выходит из строя - ломается весь массив |
RAID 1 | Зеркалирование | от 2 | Пара дисков с идентичными данными | Высокая отказоустойчивость | Использует часть дискового пространства для резервирования; скорость и объем ограничены самым медленным и маленьким диском | Для восстановления понадобится только один диск |
RAID 5 | Чередование с распределенной четностью | от 3 | Данные и блок четности равномерно распределяются между всеми дисками | Больший объем высокая скорость и отказоустойчивость | Блок четности занимает часть дискового пространства | Если один из дисков откажет, его можно восстановить |
RAID 6 | Чередование с двойной четностью | от 4 | Данные равномерно распределяются между всеми дисками и двумя блоками четности | Очень высокая отказоустойчивость | Низкая скорость записи | Выдерживает отказ двух дисков |
RAID 10 | Чередование + зеркалирование | от 4 | Два зеркальных массива RAID 1, объединенные в массив RAID 0 | Больший объем и скорость, чем у RAID 1 при высокой отказоустойчивости | Нет блока четности | Допускается отказ одного диска в каждом зеркальном массиве |
RAID-контроллер — это тип компонента хранения, который управляет дисками в инфраструктуре RAID, а также повышает производительность сервера и надежность хранения данных.
Существует две реализации контроллера RAID:
Может представлять собой отдельное устройство с собственным процессором, которое устанавливается на сервер или входит в состав внешней дисковой подсистемы. Также может быть интегрирован в материнскую плату ПК или сервера в виде микроконтроллера.
Аппаратный контроллер позволяет собрать физический массив RAID, настроить виртуальные диски и подготовить их к работе. Также он проверяет целостность данных и распределяет их между накопителями. Если один из дисков выходит из строя, контроллер отвечает за восстановление.
Благодаря своей автономности, аппаратный контроллер управляет массивами RAID не нагружая ОС. Также у него есть возможность использовать несколько конфигураций RAID параллельно.
Преимущества:
Недостатки:
Для реализации программного контроллера не нужны дополнительные устройства, поэтому такое решение гораздо дешевле.
Алгоритм RAID может быть запущен как в BIOS (если нет аппаратной поддержки), так и самой ОС (если она поддерживает) на которой установлены диски массива. Дополнительная нагрузка на процессор сказывается на общей производительности массива, но в современных системах эта разница не столь значительна.
Операционная система должна быть совместима с программным RAID: Windows — программный RAID 1 Windows Server — программные RAID 0, RAID 1, RAID 5 Linux — программные RAID 0, RAID 1, RAID 5 и RAID 10
Преимущества:
Недостатки: