В отличии от RAID5 в RAID3 для хранения контрольных сумм выделяется отдельный диск, при этом данные
распределяются по дискам не на уровне блоков, а на уровне байтов (каждый запрос приводит к обращению ко всем дискам).
RAID3 оптимален при работе с данными большого объема и преобладании линейных запросов. При работе с большим числом
мелких файлов, производительность падает.Имеем: 5 500GB SATA дисков /dev/ad1 ... /dev/ad5, 1 для контрольных сумм и 4 для хранения данных.
В итоге получим массив размером 2 Тб.
Загружаем модуль ядра с реализацией geom класса graid3:
graid3 load
Создаем массив (вместо rd3 можно указать любое желаемое имя):
graid3 label -r rd3 ad1 ad2 ad3 ad4 ad5
Опция "-r" включает задействование для операций чтения диска с контрольными суммами,
подобное позволяет значительно увеличить скорость параллельного случайного доступа к файлам, но уменьшает производительность
последовательного чтения.
Проверяем статус:
graid3 status
Name Status Components
raid3/rd3 COMPLETE ad1
ad2
ad3
ad4
ad5
Смотрим список дисков:
graid3 list
Форматируем (-U - включение Soft Updates):
newfs -U /dev/raid3/rd3
Монтируем:
mkdir /bigstore
mount /dev/raid3/rd3 /bigstore
Автоматизируем подключение при загрузке, в /boot/loader.conf добавляем
geom_raid3_load="YES"
В /etc/fstab прописываем монтирование раздела:
/dev/raid3/rd3 /bigstore ufs rw,noatime 1 1
В случае повреждения диска, достаточно его заменить без выполнения каких-либо команд - подключение нового диска и
перестроение массива будут выполнены автоматически, мета данные о структуре массива сохраняются на каждом диске.
URL:
Обсуждается: http://www.opennet.dev/tips/info/1992.shtml