RAID(独立硬盘冗余阵列)
1.基本思想:把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘
2.优点:扩大了存储能力还降低了单位成本(单块大容量硬盘价格高昂);提高了读写速度(多个硬盘同时分摊数据的读写操作);可靠性高,有容错处理(容错阵列中有单块硬盘出错不会影响整体)
3.主要种类(组合方式):RAID 0;RAID 1;RAID 5;RAID 01/10
接下来就分别介绍这几种组合方式的优缺点以及应用场景:
(1)RAID 0
有多个硬盘驱动器,数据分成数据块保存在不同硬盘上
缺点:只有数据存储没有数据差错控制
优点:数据读取速度是同级别中最快的
(2)RAID 1
有两块硬盘,两块硬盘数据相同(一个盘错了另一个还有数据),通过镜像的方式提高系统的容错能力
缺点:数据读取速度和单独一个盘的读取速度相同(因为两个盘数据相同),与一个盘相比,大大影响服务器效率
优点:安全性是最好的(甚至可以在不断电的情况下对故障硬盘进行更换,更换完毕只要从镜像盘上恢复数据即可)
(3)RAID 5
与RAID类似,不过增加了校验功能,数据段和校验信息轮流写到组内的每个硬盘里,硬盘如果损坏可以通过剩下的硬盘的校验信息恢复
缺点:RAID 5的数据读取速度与RAID 0相似,只是因为多了一个奇偶校验信息,写入数据速度相对独立写入一块硬盘硬盘的速度略慢
优点: 每个盘都有奇偶校验信息,因此磁盘空间利用率要比RAID 1高,适用于读操作比较频繁而写操作较少
(4)RAID 10/01
(RAID 10)
上图为RAID 10,先镜射(多个RAID 1)再分割数据(多个RAID 0),一个硬盘受损之后,其余的硬盘会继续运作,可靠性较高,比RAID 01常用
RAID 01
上图为RAID 01,先分割数据(多个RAID 0)再镜射(多个RAID 1),一个硬盘受损后,同组的RAID 0 硬盘会停止运作,其他组的硬盘正常运作,可靠性相对较低
总结对比:
4.RAID类型的I/O计算
(1)RAID 0
所有的磁盘都承担读写工作,则每个磁盘的工作量为【(读+写)所有工作量】/总磁盘个数
(2)RAID 1
总共两块磁盘,磁盘内容相同,即读数据只要从一个磁盘上读但是写数据要同时写到两块磁盘上去,因此每个磁盘的工作量为【(读+2*写)】/2
(3)RAID 5
每个磁盘里都其他磁盘的校验信息,因此写入时要同时写入校验信息每个磁盘的工作量为【(读+4*写)】/总磁盘个数
(4)RAID 10
RAID 0与RAID 1的组合,每个磁盘的工作量为[读+(2×写)]/磁盘个数