RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列,是指一种由多块硬盘驱动器按照一定的要求构成的冗余阵列,在操作系统中,这多块磁盘驱动器将作为一个独立的大型存储设备而出现。
RAID按照不同的需求和设计要求分为不同的级别,当有数据需要存储时,待存储数据首先需要按照不同级别的RAID系统的规定进行相关的处理,主要是加上冗余位信息,然后再和冗余位信息一起作为新的数据存入磁盘阵列当中。
RAID的用处?
RAID作为一种由多个存储设备组成的、能够协同工作的存储设备,可以充分发挥出其多个存储设备的优势:它既可以提升存储的速度,更可以增大容量,利用冗余信息位的作用,它很好地提供对于数据的容错与数据灾难的恢复功能,不会因为单个存储设备的损坏而造成对数据的破坏,有的级别的RAID系统还能保证在若干存储个体出现故障时整个系统仍可以继续正常工作。
下面介绍RAID0,RAID1,RAID5,RAID10
1)RAID0
RAID0 是无冗余、无校验的磁盘阵列,实现 RAID0 至少需要两个以上硬盘,它将两个以上的硬盘合并成一块,数据同时分散在每块硬盘中,因为带宽加倍,所以读写速度加倍,RAID0 的理论速度是单块硬盘的 N 倍,但是由于数据并不是保存在一个硬盘上,而是分成数据块保存在不同硬盘上,所以安全性也下降 N 倍,只要任何一块硬盘损坏就会丢失所有数据。
RAID0 特点: 只是单纯地提高读写性能,并没有为数据的可靠性提供保证,即 RAID0 是所有 RAID 中最脆弱的,没有任何冗余性,其中的任何一个物理盘失效都将影响到所有数据,因此,RAID0 不能应用于数据安全性要求高的场合。
2)RAID1
RAID1是一种安全的 RAID 模式,通过磁盘数据镜像实现数据的冗余,在两块磁盘上产生互为备份的数据,当其中一块成员盘出现故障时,系统还可以从另外一块成员盘中读取数据,因此 RAID1 可以提供更好的冗余性。但是由于数据需写入两次,因此在写入时性能会略有下降。在更注重安全性而非速度的情况下,RAID1 是理想选择。
RAID1 特点:是磁盘阵列中单位成本最高的,但提供了很高的数据安全性和可用性。当一个物理盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。如果 RAID1 中一块硬盘出现故障,只要把故障硬盘更换为一块好的硬盘就可以了。如果没有及时更换,导致第二块硬盘也出现故障,这时RAID1 就会失效,因为先出现故障的硬盘中的数据已经不完整,所以不能以第一块硬盘为基准进行数据恢复,而应该用后出现故障的硬盘进行数据恢复,一般情况下都能够完全恢复出所有的数据。
3)RAID5
RAID5是使用最为广泛的一种 RAID 级别,创建 RAID5 至少需要包括三块磁盘。它综合考虑了数据安全和磁盘空间充分利用这两方面的因素,由于数据是从奇偶校验块中读取,因此一块磁盘故障不会导致服务中断。
RAID5特点 适用于归档,且适合那些追求性能并要求持续访问数据的用户(如视频编辑人员)使用。如果一个物理磁盘出现故障,该磁盘上的数据可以重建到更换的磁盘上,单个磁盘出现故障时,数据不会丢失,但如果数据尚未重建到更换的磁盘上,而此时又有一个磁盘出现故障,那么 RAID 中的所有数据都将丢失。
在读写性能方面,因为每一个写操作都需要计算校验并写入校验,所以写性能稍微差一些,但读取性能很好。另外由于 RAID5 的每个条带组中都有一个条带用来写校验,所以所有校验条带加在一起刚好占用。一块物理盘的空间,也就是说 RAID5 逻辑盘的容量等于所有物理盘容量的总和减去一块物理盘的容量。
4)RAID10
RAID1+0 也被称为 RAID10 标准,实际是将 RAID1 和 RAID0 结合的产物,这种结构是为了把 RAID0 和RAID1 的优缺点相互补充,达到既安全又高速的目的。
RAID10 特点:至少需要四块硬盘才能构建,它的优点是同时拥有 RAID0 的超凡速度和 RAID1 的高数据可靠性,但是磁盘的利用率比较低。RAID10 主要用于容量不大,但要求速度和差错控制的数据库中。RAID10 其实是由多组 RAID1 构成 RAID0,它可以允许每组 RAID1 中的一块成员盘离线,如果某组 RAID1 中的某一块成员盘出现物理故障,使该盘不能正常使用,但该组 RAID1 剩下的一块成员盘中的数据完好无损,RAID10 还不会崩溃。如果未能及时替换出现故障的成员盘,当同一组 RAID1 中另一块成员盘再出现故障离线后,也就是一组 RAID1中的两块成员盘都出现故障,RAID10 将彻底崩溃。