关于主机商口中RAID的那些事儿

我们在浏览一些主机商时,总是能够或多或少的听到到这么一个词汇 —— RAID

相信有很新站长对这个词会非常的陌生,究竟这个RAID是什么东西呢?这篇文章将会由浅入深的为你解开RAID的神秘面纱。

正如你现在正在使用的台式电脑、笔记本电脑一样,服务器也是由CPU、内存、硬盘这些组件组成。相比于普通电脑的CPU与内存,服务器动辄就是E3系列(4核心、八线程)起步的CPU配以8GB到64GB甚至更多的DDR3内存,真正影响服务器整体性能的其实就是硬盘I/O了。再快的CPU,再多的内存遇到读写缓慢的硬盘都是白搭。

虽然现在市面上越来越多的SSD硬盘出现在大众视野,并且以着其150-250MB/s左右的高速读写能力快速抢占SATA硬盘(普通读写能力在80-90MB/s)市场份额,但如果仅仅将SSD硬盘用以高性能服务器还是不够的,更不要提为了大容量而选择的SATA硬盘了(SSD目前还无法实现如SATA盘的大容量低价格)。于是就引入了RAID这样一种技术了。

RAID的功能主要是通过同时向两块或多块硬盘写入连续的数据来突破硬盘的物理I/O极限。

换言之,单块SATA硬盘写入速度为80MB/s,在设置了RAID后两块SATA硬盘同时写入一组数据(假设数据为0 1),则SATA A将被写入0,同时SATA B写入1。等同于RAID阵列组的读写性能被提升了整整一倍到 160MB/s。通过这种方式来大大提高服务的I/O性能。I/O性能越高的服务器,其文件读取、写入速度就会越快,架设其上的网站也就会越快。

虽然RAID功能如此,但其又分为 硬件RAID 与 软件RAID
硬件RAID —— 采用硬件RAID卡来实现磁盘阵列,RAID卡本身包含有CPU来进行I/O数据包的列队,不需要占用系统CPU资源(
软件RAID —— 通过软件来实现磁盘阵列,需要占用系统CPU资源来进行I/O数据包的列队(不好

那么如果硬件上提供的服务器采用硬件RAID,那么在其他配置基本相同的情况下,肯定整体性能会高出软RAID的服务器。

但是仅仅是RAID磁盘阵列组本身,由于组合模式不同又分为:RAID 0,RAID 1, RAID 5 和 RAID 10

RAID 0 —即最简单的将 01 数据同时写入到 SATA 1 =0  SATA 2 =1 读写速度提升一倍

raid0

RAID 1 —待写入数据01, SATA 1 = 01  SATA 2=01。 这种方式不进行读写加速,但可以保证数据的可靠性,即使损毁一块硬盘数据还是存在

raid1

RAID 5 —待写入数据012, SATA1=0 SATA2=1 SATA3=3 SATA4=校验数据。这是一个折中于RAID0 与RAID1的方案,既可以增加读写速度,同时在损失一块硬盘的情况下来保障数据安全

raid5

RAID10 —待写入数据01, SATA1=0 SATA2=1 SATA3=0 SATA4=1。这种方案对写入速度与数据安全性都将有更高的保障。这种磁盘阵列在损失一半的硬盘情况下来保障数据的安全,较RAID5成本更高,安全度更高

raid10

 

正如上面所说,RAID 数越高的磁盘阵列,系统的I/O性能越高。所以在选择主机产品时,大家可以向主机商就此进行咨询。

目前启用了硬件RAID加速的VPS主机商有 Sugarhosts (SSD RAID10)、Linode (SSD RAID5)等

文章已完
作者心情:这货来去如风,什么鬼都没留下!!!
如无特殊说明,文章均为本站原创,转载请注明出处