这二个名词虽然相互关连,事实上却代表了硬盘故障的二个不同的方面,可靠性指的是硬盘在给定条件下发生故障的概率。可用性指的是硬盘在某种用途中可能用的时间。利用这二个名词,我们可以看到磁盘阵列是怎样把我们的硬盘系统可靠性提高到接近百分之百的程度的。
磁盘阵列可以改善硬盘系统的可靠性。因为某一硬盘中的数据可以从其它硬盘的数据中重新产生出来(例如RAID 5),所以很少会有机会使整个硬盘系统失效。硬盘子系统的可靠性因而大大改善了。
图表9是RAID硬盘子系统与单个硬盘子系统的可靠性比较:
硬盘子系统
硬盘数时间
平均故障时间
平均丢失数据时间
单个硬盘
1
30,000小时
30,000小时
RAID 0 (分段)
5
30,000小时
60,000小时
RAID 1 (镜像)
2
30,000小时
49,9百万小时
RAID 5 (分段加奇偶码)
5
30,000小时
46,2百万小时
我们还必须考虑系统的可用性。单一硬盘系统的可用性比没有数据冗余的磁盘阵列要好,而冗余磁盘阵列的可用性比单个硬盘的好得多。这是因为冗余磁盘阵列答应单个硬盘出错,而继续正常工作。此外,一个硬盘故障后的系统恢复时间也大大缩短(与从磁带恢复数据相比)。最后,因为发生故障时,硬盘上的数据是故障当时的数据,替后的硬盘也将包含故障时的数据(举例说,前天晚上的备份数据)。要得到完全的容错性能,计算器硬盘子系统的其它部件也必须有冗余例如提供二个电源,或者配备双份硬盘控制器。没有其它部件的冗余,即使有非常可靠的硬盘子系统,还是不能完全防止计算机系统的失效。