2008年(8065)
分类: 服务器与存储
2008-12-03 13:54:16
你无可奈何地放下电话,打算再整理一下手头的技术资料。结果,同事小张垂头丧气的跑进来说:“昨天实验室的服务器一下子坏了2块盘,尽管补救了一些数据,但是一些重要文档还是丢了!”
结束了一天的劳累,你在家门口的信箱里看到了银行寄来的帐单。“买个怎么会花16000呢?一定搞错了!”你打开打算核实一下消费记录,结果银行网站显示:系统繁忙,请稍后登陆。
多么糟糕的一天!
如果商城的客户数据及时做了备份,如果实验室的服务器用了更高级的备份方案,如果银行的
查询系统效率更高……
虽然这样倒霉的日子并不多见,不过我们还是需要认真考虑一下墨菲定律!换句话说,就是“不怕一万,就怕万一。”
其实,上述场景中相关的服务器如果采用了合宜的RAID方案,情况或许就不会那么糟糕了。对于规避风险的企业用户而言,RAID是个不错的选择!
选择何种RAID
RAID是英文Redundant Array of Inexpensive Disks的缩写,翻译过来即:廉价磁盘冗余阵列。RAID对计算机管理和访问大容量数据存储的方法进行了革命性的变革。RAID可以充分发挥出多块的优势,实现远远超出任何一块单独硬盘的速度和吞吐量。同时RAID还可以提供良好的容错能力。
目前约有一半左右的服务器客户在选购服务器的时候会选择RAID配置。不同的RAID可以提供不同的速度,安全性和性价比。
笔者认为,在选择服务器RAID配置时,可以着重考虑如下两个因素:
1、判断存储数据的重要级别,以权衡投入的成本
2、读写效率对公司业务的影响
目前服务器中常见的RAID类型主要是:
RAID 0:读写速度快,硬盘利用率为100%,成本低,但是不具备备份及容错能力,可靠度最差。
RAID 1:完全容错,可靠性高,但是硬盘利用率仅仅为50%。
RAID 5:读写速度高于RAID1,而当一个硬盘驱动器出现故障可以通过校验信息恢复数据,空间利用率为(n-1)/n,成本相对经济,也是目前使用最广泛的是RAID技术。
可是随着硬盘容量和密度的增加,当一块硬盘损坏后,数据重建的时间在延长甚至非常困难,而此过程中第二块硬盘出错风险增大。因此,RAID6技术在近年开始呈现上升趋势。
权衡RAID6
RAID6是对RAID5的扩展。它在中增加了第二个独立的奇偶校验信息块,两个独立的奇偶系统使用不同的算法,所以需要N+2个磁盘。这样即使两块磁盘同时失效,也不会影响数据的使用。
表1:不同RAID类型的磁盘利用率比较
RAID类型 |
空间利用率 |
备注 |
RAID 1 (2D + 2D) |
50% |
镜像 |
RAID 5 (3D + 1D) |
75% |
数据盘和校验盘之间的比例 |
RAID 5 (7D + 1D) |
87.5% | |
RAID 6 (6D + 2D) |
75% |
RAID 6 (6D + 2D)和RAID 5 (3D + 1D)的利用率是一样的 |
表2:不同RAID类型的性能比较
RAID类型 |
随机读和顺序读 |
顺序写 |
随机写 |
RAID 1 (2D + 2D) |
100% |
100% |
100% |
RAID 5 (3D + 1D) |
100% |
150% |
50% |
RAID 5 (7D + 1D) |
200% |
350% |
100% |
RAID 6 (6D + 2D) |
200% |
300% |
66.7% |
备注 |
和磁盘的数量成正比 |
和数据盘的数量成正比 |
|
由上述两个图表可以看出,RAID6的磁盘利用率、读取性能和容错能力要优于RAID5,但因为要在每硬盘上写入两组校验,因此写入性能比较差,加之相对较高的价格,因此这项技术一直没有大规模的使用。
今年Intel在IDF现场展示了基于Intel IOP33/IO的Raid 6加速功能,能够使主机CPU无需承担在数据通路上逐字节进行大量Raid 6运算,在不影响性能的同时实现Raid 6的功能。
加之前文中提到的硬盘容量增大导致的重建时间延长带来的风险,因此可以相信对于追求低风险、低成本的服务器用户而言,RAID6配合RAID6加速技术不失为一种理想的。
那么什么情况下用RAID6更经济呢?回到本文开头所给出的那些场景:
如果网络商城的服务器用了RAID6技术,就可以更快的接收到客户下的订单,并在服务器硬盘系统出现故障时尽快回复客户的交易信息。
如果实验室的服务器采用了RAID6技术,那么就是同时坏了2块硬盘也不会丢失重要的研发资料。
如果银行的服务器查询系统采用了RAID6加速技术,那么客户的满意度一定会大幅度提升。
因此,我们的结论是,对于进行大交易量的数据库应用而言,RAID6是个不错的选择。