1.6.6.5 RAID-3 - Bit Interleave Data Striping with Parity Disk
The use of additional disks to redundantly encode customers data and guard
against loss is referred to as check sum, disk parity or error correction code
(ECC). The principle is the same as memory parity, where the data is guarded
against the loss of a single bit.
Figure 17 shows an example of RAID-3. Four of the disks hold data, and can be
accessed independently by the processor, while the fifth is hidden from the
processor and stores the parity of the other four. Writing data to any of the disks
(1, 2, 3 or 4) causes the parity to be recomputed and written to disk 5. If any of
the data disks subsequently fail, the data can still be accessed by using the
information from the other data disks along with the parity disk which is used to
reconstruct the data on the failed disk.
Since the files are held on individually addressable disks, this design offers a
high I/O rate. Compared to a single disk of similar capacity, this array has more
actuators for the same amount of storage. These actuators will work in parallel,
as opposed to the sequential operation of the single actuator, thus reducing
average access times.
┌───────┴───────┐
│ Disk
│ Controller
└───────┬───────┘
┌─────────────┬────────────┼────────────┬────────────┐
│ │ │ │
┌────┴─────┐ ┌────┴─────┐ ┌────┴─────┐ ┌────┴─────┐ ┌────┴─────┐
│ Bit 0 │ │ Bit 1 │ Bit 2 │ Bit 3 │ Parity │
├──────────┤ ├──────────┤ ├──────────┤ ├──────────┤ ├──────────┤
│ Bit 4 │ │ Bit 5 │ Bit 6 │ Bit 7 │ Parity │
├──────────┤ ├──────────┤ ├──────────┤ ├──────────┤ ├──────────┤
│ │ │ Parity │
└──────────┘ └──────────┘ └──────────┘ └──────────┘ └──────────┘
Disk 1 Disk 2 Disk 3 Disk 4 Disk 5
Figure 17. RAID-3 (Bit Interleave Data Striping with Parity Disk)
Multiple disks are used with the data scattered across them. One disk is used
for parity checking for increased fault tolerance.
1.6.6.6 RAID-4 - Block Interleave Data Striping with One Parity Disk
The performance of bit-interleaved arrays in a transaction processing
environment, where small records are being simultaneously read and written, is
very poor. This can be compensated for by altering the striping technique, such
that files are striped in block sizes that correspond to the record size being read.
This will vary in different environments. Super-computer type applications may
require a block size of 64KB, while 4KB will suffice for most DOS applications.
28 NetWare Integration Guide