As systems with faster CPUs and increasing memory become available, disk I/O is rapidly becoming the primary bottleneck on overall system performance. Disk operations typically take milliseconds to complete; memory and CPU operations take nanoseconds to microseconds. Thus, a single disk block read may take as long as many thousands of CPU operations.
By making multiple disks into disk arrays, disk I/O speed is significantly improved because the time spent physically reading or writing the disk is reduced. For example, on network servers with many users accessing many small files, disk arrays allow multiple, independent I/O requests to be serviced in parallel by separate disks. The more disks in the array, the better the potential performance benefits.
Use redundancy and fault tolerance to increase reliability. Reliability is defined in this context as the ability to directly access data, even during drive failures. Redundancy provides data reliability and fault tolerance provides disk reliability.
Mirroring (RAID 1) is more expensive than other
techniques, but may provide better performance than
RAID levels 4 or 5 in write-intensive
situations. For example, mirroring twenty 1GB
drives requires forty 1GB drives; only twenty-one
1GB drives are required for a ``20 + 1''
RAID 5 array to provide an equivalent level of
data reliability, but the RAID 1 configuration
offers greater throughput.