SSD阵列卡方案优化:考虑使用RAID 50替代RAID 10

最近一直在研究RAID 50,因为牺牲一半的容量的RAID 10代价实在太大了,而且它提供的可用性也并不是百分百的,我们首先来看下RAID 10的可用性分析:

以同等容量的不同RAID方式作为案例分析:

 8盘RAID 106盘RAID 505盘RAID 56盘RAID 6
第一块盘故障后可用概率100%100%100%100%
第二块盘故障后可用概率6/73/50%100%
第三块盘故障后可用概率4/60%0%0%
第四块盘故障后可用概率2/50%0%0%

RAID 50中:4块盘组成单组RAID 5,然后两组RAID 5再组成RAID 0最后得到8块盘的RAID 50

案例分析:

第一块盘的容错概率都是100%,可见磁盘阵列最基本的能力就是容错,然而不同级别的阵列能够提供的数据保护能力也是不同的;

从第二块盘开始除了RAID 6能够提供100%的可用性以外,其他包括RAID 10在内都不能提供完美的解决方案。同时我们可以发现RAID 5的容错能力是最弱的,但是要达到同样容量所需要的盘数量也是最少的,如果故障运维较为及时的话,RAID 5是一个非常经济的方案,不然在第一块盘故障期间再次发生第二块盘故障就会导致数据丢失,这就是风险所在;

RAID 6当然是较为可靠的方案,但是它要牺牲两块盘的容量并且性能较差,所以要权衡性能和可用性;

当然重点还是RAID 10和50,我们发现50在损坏第二块盘时的可用概率和10比较接近,如果RAID 5组的数量更多的话,可用性概率将会更高,我们以9块盘RAID 50为例,要达到相同容量RAID 10需要12块盘:

 12盘RAID 109盘RAID 50
第一块盘故障后可用概率100%100%
第二块盘故障后可用概率10/116/8
第三块盘故障后可用概率8/103/7
第四块盘故障后可用概率6/90%

50已经能够提供第三块盘的容错,只是相比10概率更低些,但是两者都不能达到完全的100%,所以权衡成本和可用性50还是有一定的优势。接下来看看性能。

SSD成本较高,不少用户为了考虑可用性都会选用RAID 10的方式作阵列,这样无疑又增加了成本,为了能够很好地分析性能,我们沿用了第一组对比方案的作性能分析:

Intel S3500 800G SSD8p RAID 106p RAID 505p RAID 56p RAID 6
块大小队列深度IOPsMBPsIOPsMBPsIOPsMBPsIOPsMBPs
随机读(4KB 8KB 16KB 32KB)
4K3296716396100630412105939433105278431
8K329600378699199812103196845103059844
16K32947251551948271553917581503965951582
32K32831152723667862188566371855663912175
随机写(4KB 8KB 16KB 32KB)
4K322022082156586411602471057943
8K3212306100141571151156194941377
16K32485679807213274261216473106
32K32185660264286163153199965
4KB混合随机读写(30%写)
4K3246716191367581503073912528566117
顺序读(128KB 256KB 512KB)
128K32207512719200132623183302402205052687
256K32105052753982925768736229099412605
512K3251882720481325234371229149562598
顺序写(128KB 256KB 512KB)
128K3251626764660610763010002460322
256K32242663519855202208578980256
512K3211696121373719226711881134594
随机读分析:

理论上认为R10性能最好,真实测试数据显示4K、8K数据块下R5、R50、R6的性能都要优于R10;当数据块增大到16K、32K时,R10的多盘优势才被逐渐体现出来。

随机写分析:

4K由于R50、R5由于有大量校验计算一定程度上影响了性能,但随着数据块逐渐增大,盘数量的优势也显现出来。当数据块达到和超过8K 时,R50性能全面超越了R10;R10由于存在R1的写同步问题,因此只有4块盘在支撑并发写,随着数据块的增大,R50和R5的多盘性能优势开始发 挥。

混合随机读写分析:

得益多盘和无校验计算,混合读写R10领先;R50其次,和R10相差27%,性能也较为接近,R5和R50性能为线性关系,R6性能最差。

顺序读分析:

由于不存在校验计算,顺序读性能基本上由盘的数量决定;R50和R10性能也较为接近,同盘数的R6和R50性能相当,而盘数较少的R5性能相对前三者要弱一些,符合预期。至于为何R10性能无法线性增加,主要是因为阵列卡本身的性能限制。

顺序写分析:

顺序写R5被优化得最好;R50由于需要同时计算两次校验因此损失了一些性能,和R10性能相当,当数据块达到512K时,多盘优势进一步体现出来了,拉开了与R10的差距;R6由于校验和计算的实现较为复杂,顺序写性能也是最差的。

然后我们再来看看这些阵列方案的特性:

参数特性8p RAID 106p RAID 505p RAID 56p RAID 6
理论读并发数8块盘6块盘5块盘6块盘
理论写并发数4块盘6块盘5块盘6块盘
IO延迟来源RAID 1写同步2组RAID 5写校验1组RAID 5写校验1组RAID 6写校验
     
测试结论:

性能测试显示,相同容量的R50和R10性能接近:其中小块文件的随机读R50要全面好于R10,随机写4K虽然R50和R10差距在28%,但是块增大后R50要全面优于R10。顺序读写方面,R50和R10十分接近。

容错方面,R50接近R10:第二块盘容错率R50十分接近R10,两者相差30%。R10的优势主要是在有一定的概率提供第三、甚至第四 块磁盘的容错率,但是考虑到并非100%容错,因此从容错角度来看R50虽然和R10有一些差距,但也已体现出较好的容错率,至少优于R5。而且R50搭 配灵活,甚至可以指定3组R5以达到最大3块磁盘的容错;

成本方面,R50有很大优势:按这个配置计算R50只有R10的3/4。

转载于:https://www.cnblogs.com/interdrp/p/4892140.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值