Я досі не зрозумів, чому RAID5 кращий, ніж RAID4. Я розумію, що обидва обчислюють біти парності, які використовуються для відновлення, якщо виникає якийсь збій, єдина відмінність полягає в зберіганні цих бітів парності. Звідси я запозичив діаграми Як працює паритет на масиві RAID-5
A B (A XOR B)
0 0 0
1 1 0
0 1 1
1 0 1
RAID4
Disk1 Disk2 Disk3 Disk4
----------------------------
data1 data1 data1 parity1
data2 data2 data2 parity2
data3 data3 data3 parity3
data4 data4 data4 parity4
Скажімо, що перший ряд:
data1 = 1
data1 = 0
data1 = 1
parity1 = 0 (COMPUTED: 1 XOR 0 XOR 1 = 0)
RAID5
Disk1 Disk2 Disk3 Disk4
----------------------------
parity1 data1 data1 data1
data2 parity2 data2 data2
data3 data3 parity3 data3
data4 data4 data4 parity4
Скажімо, що перший ряд:
parity1 = 0 (COMPUTED: 1 XOR 0 XOR 1 = 0)
data1 = 1
data1 = 0
data1 = 1
Сканарі:
1. RAID4 - ПОМИЛКА Disk3:
data1 = 1
data1 = 0
data1 = 1 (COMPUTED: 1 XOR 0 XOR 0 = 1)
parity1 = 0
2. RAID4 - Disk4 (паритет) ПЕРЕДБАЧЕННЯ:
data1 = 1
data1 = 0
data1 = 1
parity1 = 0 (COMPUTED: 1 XOR 0 XOR 1 = 0)
тощо.
Загалом: коли RAID (4 або 5) використовує N дисків і один виходить з ладу. Я можу взяти всі залишилися невдалі диски (N-1) та XOR (оскільки XOR - асоціативна операція), і я отримаю невдале значення. Яка користь зберігати паритет не на виділеному диску, а скоріше циклічно? Чи є якась користь від продуктивності чи що? Дякую