Что такое уровни RAID — описание и различия

Вступление
Изначально предполагается, что жесткий диск – вещь надежная. Соответственно, вероятность выхода из строя сразу двух дисков равна (по формуле) произведению вероятностей, т.е. ниже на порядки чем выход одного диска! К сожалению, реальная жизнь – не теория! Два винчестера берутся из одной партии и работают в одинаковых условиях, а при выходе из строя одного из дисков нагрузка на оставшийся увеличивается, поэтому на практике при выходе из строя одного из дисков следует срочно принимать меры – вновь восстанавливать избыточность. Для этого с любым уровнем RAID (кроме нулевого) рекомендуют использовать диски горячего резерва HotSpare или горячей замены. Достоинство такого подхода – поддержание постоянной надежности. Недостаток – еще большие издержки (т.е. стоимость 3-х винчестеров для хранения объема одного диска).

Самые часто используемые:

RAID 0 (“Striping”) НЕ ЗЕРКАЛИРУЕТ — избыточности не имеет, а информацию распределяет сразу по всем входящим в массив дискам в виде небольших блоков («страйпов»). За счет этого существенно повышается производительность, но страдает надежность. Как и в случае JBOD, за свои деньги мы получаем 100% емкости диска.
Поясню, почему уменьшается надежность хранения данных на любом составном томе – так как при выходе из строя любого из входящих в него винчестеров полностью и безвозвратно пропадает вся информация. В соответствии с теорией вероятностей математически надежность тома RAID0 равна произведению надежностей составляющих его дисков, каждая из которых меньше единицы, поэтому совокупная надежность заведомо ниже надежности любого диска.

Хороший уровень – RAID 1 (“Mirroring”, «зеркало»). ЗЕРКАЛИРУЕТ — он имеет защиту от выхода из строя половины имеющихся аппаратных средств (в общем случае – одного из двух жестких дисков), обеспечивает приемлемую скорость записи и выигрыш по скорости чтения за счет распараллеливания запросов. Недостаток заключается в том, что приходится выплачивать стоимость двух жестких дисков, получая полезный объем одного жесткого диска.

Остальные:

RAID 5, Жертвуя ради избыточности емкостью всего одного диска из массива, мы получаем защиту от выхода из строя любого из винчестеров тома. На запись информации на том RAID5 тратятся дополнительные ресурсы, так как требуются дополнительные вычисления, зато при чтении (по сравнению с отдельным винчестером) имеется выигрыш, потому что потоки данных с нескольких накопителей массива распараллеливаются.

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

Помимо базовых уровней RAID0 — RAID5, описанных в стандарте, существуют комбинированные уровни RAID10, RAID30, RAID50, RAID15, которые различные производители интерпретируют каждый по-своему.

Суть таких комбинаций вкратце заключается в следующем. RAID10 – это сочетание единички и нолика (см. выше). RAID50 – это объединение по “0” томов 5-го уровня. RAID15 – «зеркало» «пятерок». И так далее.

Таким образом, комбинированные уровни наследуют преимущества (и недостатки) своих «родителей». Так, появление «нолика» в уровне RAID 50 нисколько не добавляет ему надежности, но зато положительно отражается на производительности. Уровень RAID 15, наверное, очень надежный, но он не самый быстрый и, к тому же, крайне неэкономичный (полезная емкость тома составляет меньше половины объема исходного дискового массива).

RAID 6 отличается от RAID 5 тем, что в каждом ряду данных (по-английски stripe) имеет не один, а два блока контрольных сумм. Контрольные суммы – «многомерные», т.е. независимые друг от друга, поэтому даже отказ двух дисков в массиве позволяет сохранить исходные данные. Вычисление контрольных сумм по методу Рида-Соломона требует более интенсивных по сравнению с RAID5 вычислений, поэтому раньше шестой уровень практически не использовался. Сейчас он поддерживается многими продуктами, так как в них стали устанавливать специализированные микросхемы, выполняющие все необходимые математические операции.

Согласно некоторым исследованиям, восстановление целостности после отказа одного диска на томе RAID5, составленном из дисков SATA большого объема (400 и 500 гигабайт), в 5% случаев заканчивается утратой данных. Другими словами, в одном случае из двадцати во время регенерации массива RAID5 на диск резерва Hot Spare возможен выход из строя второго диска… Отсюда рекомендации лучших RAIDоводов: 1) всегда делайте резервные копии; 2) используйте RAID6!

Недавно появились новые уровни RAID1E, RAID5E, RAID5EE. Буква “Е” в названии означает Enhanced.

RAID level-1 Enhanced (RAID level-1E) комбинирует mirroring и data striping. Эта смесь уровней 0 и 1 устроена следующим образом. Данные в ряду распределяются точь-в-точь так, как в RAID 0. То есть ряд данных не имеет никакой избыточности. Следующий ряд блоков данных копирует предыдущий со сдвигом на один блок. Таким образом как и в стандартном режиме RAID 1 каждый блок данных имеет зеркальную копию на одном из дисков, поэтому полезный объем массива равен половине суммарного объема входящих в массив жестких дисков. Для работы RAID 1E требуется объединение трех или более дисков.

Перейдем теперь к уровню RAID level-5 Enhanced (RAID level-5E). Это то же самое что и RAID5, только со встроенным в массив резервным диском spare drive. Это встраивание производится следующим образом: на всех дисках массива оставляется свободным 1/N часть пространства, которая при отказе одного из дисков используется в качестве горячего резерва. За счет этого RAID5E демонстрирует наряду с надежностью лучшую производительность, так как чтение/запись производится параллельно с бОльшего числа накопителей одновременно и spare drive не простаивает, как в RAID5. Очевидно, что входящий в том резервный диск нельзя делить с другими томами (dedicated vs. shared). Том RAID 5E строится минимум на четырех физических дисках. Полезный объем логического тома вычисляется по формуле N-2.

RAID level-5E Enhanced (RAID level-5EE) подобен уровню RAID level-5E, но он имеет более эффективное распределение spare drive и, как следствие, – более быстрое время восстановления. Как и уровень RAID5E, этот уровень RAID распределяет в рядах блоки данных и контрольных сумм. Но он также распределяет и свободные блоки spare drive, а не просто оставляет под эти цели часть объема диска. Это позволяет уменьшить время, необходимое на реконструкцию целостности тома RAID5EE. Входящий в том резервный диск нельзя делить с другими томами – как и в предыдущем случае. Том RAID 5EE строится минимум на четырех физических дисках. Полезный объем логического тома вычисляется по формуле N-2.

Как ни странно, никаких упоминаний об уровне RAID 6E на просторах Интернета я не нашел — пока такой уровень никем из производителей не предлагается и даже не анонсируется. А ведь уровень RAID6E ( или RAID6EE? ) можно предложить по тому же принципу, что и предыдущий. Диск HotSpare обязательно должен сопровождать любой том RAID, в том числе и RAID 6. Конечно, мы не потеряем информацию при выходе из строя одного или двух дисков, но начать регенерацию целостности массива крайне важно как можно раньше, чтобы скорее вывести систему из «критического» режима. Поскольку необходимость диска Hot Spare для нас не подлежит сомнению, логичным было бы последовать дальше и «размазать» его по тому так, как это сделано в RAID 5EE, чтобы получить преимущества от использования бОльшего количества дисков (лучшая скорость на чтении-записи и более быстрое восстановление целостности).

Все «зеркальные» уровни – RAID 1, 1+0, 10, 1E, 1E0.

Давайте еще раз попробуем досконально разобраться, чем же различаются эти уровни?

RAID 1.
Это – классическое «зеркало». Два (и только два!) жестких диска работают как один, являясь полной копией друг друга. Выход из строя любого из этих двух дисков не приводит к потере ваших данных, так как контроллер продолжает работу с оставшимся диском. RAID1 в цифрах: двукратная избыточность, двукратная надежность, двукратная стоимость. Производительность на запись эквивалентна производительности одного жесткого диска. Производительность чтения выше, так как контроллер может распределять операции чтения между двумя дисками.

RAID 10.
Суть этого уровня в том, что диски массива объединяются парами в «зеркала» (RAID 1), а затем все эти зеркальные пары в свою очередь объединяются в общий массив с чередованием (RAID 0). Именно поэтому его иногда обозначают как RAID 1+0. Важный момент – в RAID 10 можно объединить только четное количество дисков (минимум – 4, максимум – 16). Достоинства: от «зеркала» наследуется надежность, от «нуля» – производительность как на чтение, так и на запись.

RAID 1Е.
Буква «E» в названии означает «Enhanced», т.е. «улучшенный». Принцип этого улучшения следующий: данные блоками «чередуются» («striped») на все диски массива, а потом еще раз «чередуются» со сдвигом на один диск. В RAID 1E можно объединять от трех до 16 дисков. Надежность соответствует показателям «десятки», а производительность за счет большего «чередования» становится чуть лучше.

RAID 1Е0.
Этот уровень реализуется так: мы создаем «нулевой» массив из массивов RAID1E. Следовательно, общее количество дисков должно быть кратно трем: минимум три и максимум – шестьдесят! Преимущество в скорости при этом мы вряд ли получим, а сложность реализации может неблагоприятно отразиться на надежности. Главное достоинство – возможность объединить в один массив очень большое (до 60) количество дисков.

Сходство всех уровней RAID 1X заключается в их показателях избыточности: ради реализации надежности жертвуется ровно 50% суммарной емкости дисков массива.

1. Как работает кэш RAID?

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

2. Как кэш RAID влияет на энергопотребление?

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

3. Как кэш RAID влияет на выделение тепла?

Так же, как и энергопотребление, кэш RAID влияет на выделение тепла: увеличивает тепловыделение контроллера RAID и снижает тепловыделение дисков. Контроллер RAID генерирует больше тепла, работая с кэшем, особенно если кэш энергозависим и требует постоянного обновления данных. Кэш памяти также выделяет больше тепла, когда он загружен или активно используется из-за частых операций передачи данных и вычислений. Однако, как и в случае с энергопотреблением, кэш RAID снижает тепловыделение дисков за счет уменьшения их активности и перевода в режимы пониженного энергопотребления. Это помогает снизить температуру системы и предотвратить перегрев.

4. Как оптимизировать настройки кэша RAID ?
Настройки кэша RAID можно регулировать для балансировки между производительностью, энергопотреблением и тепловыделением, в зависимости от ваших нужд. Обычно есть три варианта: отсутствие кэша, кэш только на чтение и кэш на чтение/запись. Без кэша контроллер RAID не использует память, что снижает энергопотребление и тепловыделение, но также снижает производительность и надежность. Кэш только на чтение улучшает производительность чтения, но не влияет на производительность записи, энергопотребление или тепловыделение. Кэш на чтение/запись улучшает производительность обеих операций, но увеличивает потребление энергии и выделение тепла. Также можно точно настроить размер кэша, режим и политику для оптимизации работы.

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