RAID10,RAID01以及RAID5
最近听DBA的分享,了解到RAID10与RAID01的比较,在此记录下备忘。
和RAID 0不同,在RAID 1中容错是主要关注点。RAID 1 的基本形式是把两个物理硬盘组合在一起,通过镜像在这两个物理硬盘上的数据形成一个虚拟磁盘。如果服务器把一个数据块写往虚拟磁盘,RAID控制器就把这个数据块同时写到两个物理硬盘上 ,其复制也被称作镜像。采用RAID 1的磁盘阵列通常保持两个复制,有时候甚至保持 3 个复制 (称作 3 路镜像)。 在RAID 1 中,服务器也仅看到虚拟磁盘。RAID控制器把服务器的每个写操作都在两个物理硬盘上重复执行。如果有一个物理磁盘失效了,那么数据还可以从另一个硬盘上读出来。 使用纯粹的RAID 1 ,仅对读操作性能提升是可能的。当服务器从虚拟磁盘读数据时,RAID控制器可以把负载分配到两个物理硬盘上。例如,服务器读A、B、C、D 四块数据,RAID控制器可以从第一个硬盘读 A、B块,同时从第二个硬盘读 C、D块,从而执行并行操作。对于写操作,则可能有一定的性能减退,因为 RAID 控制器必须把同样的数据块发送给两个物理硬盘,增加了控制器的发送时间,也增加了 I/0 通道的负荷。
raid10:先做镜像,后做条带
raid01:先做条带,后做镜像
由于策略的不同,带来的安全性以及性能有所不同。
安全性(这里举四个disk的例子):
前提:假如disk0坏掉了
在RAID10中,如果disk1坏掉了(disk2,或者dis3坏掉其中一个,不影响服务),才会导致 整个RAID不支持访问。所以出问题的几率是1/3
在raid01中,如果disk2或者disk3坏掉一个,就无法提供服务了。所以出问题的概率为2/3.(注意,disk0和disk1是做条带的,所以disk0坏掉后,disk1也无法提供服务了)
性能方面:
Disk0无损坏,raid10和raid01读写性能没有区别
Disk0损坏,raid10读优于raid01,raid10可以读三块盘
上一篇: RandomAccess接口的使用
下一篇: 性能测试 and BIEE(二)