Найти тему

Что такое RAIDz?

RAIDz – это, по сути, аналог массива RAID5, который используется в системах хранения данных, основанных на технологии ZFS. Хотя пул дисков, объединенных в RAIDz, имеет ту же отказоустойчивость в один диск, как и RAID5, механизм реализации этого сильно отличается от классической технологии RAID5. Так, в RAID5 объем одного диска-члена массива уходит на избыточность, которая как раз в случае сбоя и позволит восстановить недостающие данные. Основные параметры классического массива RAID5, которые задаются в момент создания массива и постоянны, пока массив функционирует:

  • Число дисков-членов.
  • Порядок дисков в массиве.
  • Первый диск.
  • Размер блока.
  • Расположение блоков с четностью (избыточные данные) на дисках-членах, так называемое вращение – может быть левым и правым.
  • Расположение блоков с данными относительно блоков с четностью. Может быть синхронным, когда блоки с данными в каждом ряду начинаются после блока с четностью, и асинхронным, когда блоки с данными всегда начинаются с первого диска или второго, если четность пришлась на первый в том или ином ряду.

Еще раз скажем, что эти параметры задаются в момент создания массива RAID5 и дальше уже не меняются. Ниже приведены схемы левого синхронного и правого асинхронного массива RAID5 из 3-х дисков.

RAIDz отличается от RAID5 тем, что он больше не работает с дисками от начала до конца, как с колонками в RAID5. Вместо этого RAIDz работает в связке с ZFS, которая делает запрос на размещение определенного количества данных с заданной степенью отказоустойчивости – один диск в случае RAIDz. Исходя из этого, формируется маленький массив RAID на тех участках дисков, которые сейчас доступны, но число колонок, порядок дисков, первый диск, размер колонок на дисках, расположение четности определяется индивидуально для этого RAID. Так, например, данные вообще могут быть размещены на двух дисках в виде зеркальных копий, так как это тоже обеспечивает отказоустойчивость в один диск. Ниже приведен пример возможного расположения данных и четности для RAIDz:

-2

Видно, что требование к отказоустойчивости в один диск реализовано для пула из четырех дисков за счет техники зеркалирования для блоков из двух дисков и техники четности (как у обычного RAID5), причем число колонок варьируется от трех до четырех – в общем случае оно может быть от трех до N дисков. Очевидно, что это гораздо более сложный подход к хранению данных как в плане реализации, так и в плане восстановления в случае сбоя.