В настоящее время у меня есть раздел Btrfs с четырьмя устройствами: три диска по 3 ТБ и диск по 4 ТБ. Данные и метаданные - это RAID 10, поэтому у меня есть 6 ТБ полезного пространства, которое почти заполнено. Я ожидал, что поддержка RAID 5 в Btrfs станет зрелой ко времени заполнения моего хранилища, но, очевидно, это не является приоритетом.
Мой вопрос: есть ли причина предпочитать RAID 10, а не RAID 1? Я знаю, что настоящий RAID 1 на моем текущем оборудовании должен дать мне 3 ТБ полезного пространства с 4 копиями каждого блока, но Btrfs, по-видимому, так себя не ведет. Из Btrfs FAQ:
btrfs сначала объединяет все устройства в пул хранения, а затем дублирует фрагменты по мере создания файловых данных. RAID-1 в настоящее время определяется как "2 копии всех данных на разных устройствах". Это отличается от MD-RAID и dmraid тем, что они делают ровно n копий для n устройств. В btrfs RAID-1 на трех устройствах по 1 ТБ мы получаем 1,5 ТБ полезных данных. Поскольку каждый блок копируется только на 2 устройства, запись данного блока требует записи только на 2 устройства; чтение может быть сделано только с одного.
И от Йенса Эрата о переполнении стека:
Btrfs распределяет данные (и их копии RAID 1) по блокам, поэтому очень хорошо работает с жесткими дисками различного размера. Вы получите сумму всех жестких дисков, разделенную на два, и вам не нужно думать о том, как собрать их в пары одинакового размера.
Если выходит из строя более одного диска, вы всегда рискуете потерять данные: RAID 1 не может справиться с потерей двух дисков одновременно. В приведенном выше примере, если умирают не те два диска, вы всегда теряете данные.
Означает ли это, что перебалансировка с RAID 10 на RAID 1 даст мне дополнительные 500 ГБ данных (6,5 ТБ, а не 6 ТБ) из-за диска 4 ТБ? И есть ли причина для меня придерживаться RAID 10?