常见RAID磁盘阵列组合简介
RAID,是Redundant Arrays of Inexpensive Disks的简写,磁盘阵列。现今的计算机世界,最值钱的是什么?软件、硬件?都不对,应该是承托在其之上的数据。对于我们来说,数据是无价的,硬件损坏了,可以重新购置。软件损坏了,也可以重新安装,但数据一旦丢失,就有可能再也找不回来了。硬盘作为存放数据的重要介质,其重要性不言而喻。但作为设备,就会有损坏的机会,如何避免因硬盘损坏而造成数据丢失呢? RAID就是一个很好的解决方案。
RAID将一组硬盘连结成来,组成一个阵列,以避免单个硬盘损坏而带来的数据损失,同时亦提供了比单个硬盘高的可用性及容错性。
常见的组合方式有:RAID0、RAID1、RAID5、RAID6、RAID01、RAID10(其它RAID3RAID4等只是在实验室上存在,基本上没什么人用于生产环境,所以不作过多的介绍),它们分别的特性见下描述:
RAID0:
RAID0俗称“条带”,它将两个或多个硬盘组成一个逻辑硬盘,容量是所有硬盘之和,因为是多个硬盘组合成一个,故可并行写操作,写入速度提高,但此方式硬盘数据没有冗余,没有容错,一旦一个物理硬盘损坏,则所有数据均丢失。因而,RAID0适合于对数据量大,但安全性要求不高的场景,比如音像、视频文件的存储等。
RAID1:
RAID1俗称“镜像”,它最少由两个硬盘组成,且两个硬盘上存储的数据均相同,以实现数据冗余。RAID1读操作速度有所提高,写操作理论上与单硬盘速度一样,但由于数据需要同时写入所有硬盘,实际上稍为下降。容错性是所有组合方式里最好的,只要有一块硬盘正常,则能保持正常工作。但它对硬盘容量的利用率则是最低,只有50%,因而成本也是最高。RAID1适合对数据安全性要求非常高的场景,比如存储数据库数据文件之类。
RAID5:
RAID5最少由三个硬盘组成,它将数据分散存储于阵列中的每个硬盘,并且还伴有一个数据校验位,数据位与校验位通过算法能相互验证,当丢失其中的一位时,RAID控制器能通过算法,利用其它两位数据将丢失的数据进行计算还原。因而RAID5最多能允许一个硬盘损坏,有容错性。RAID5相对于其它的组合方式,在容错与成本方面有一个平衡,因而受到大多数使用者的欢迎。一般的磁盘阵列,最常使用的就是RAID5这种方式。
RAID6:
RAID6是在RAID5的基础上改良而成的,RAID6再将数据校验位增加一位,所以允许损坏的硬盘数量也由RAID5的一个增加到二个。由于同一阵列中两个硬盘同时损坏的概率非常少,所以,RAID6用增加一块硬盘的代价,换来了比RAID5更高的数据安全性。
另外,还有一些组合方式是上述方式的混合,以获取更高的可用性与容错性,比如:
RAID01:
RAID01是RAID0与RAID1的组合,先将数据分成两组,然后再对两组数据进行镜像。
RAID10:
RAID10与RAID01相反,它是先将数据进行镜像操作,然后再对数据进行分组。
附表:各级RAID比较
RAID级别 |
RAID0 |
RAID1 |
RAID5 |
RAID6 |
RAID01 |
RAID10 |
容错 |
无 |
有 |
有 |
有 |
有 |
有 |
冗余 |
无 |
镜像 |
奇偶校验 |
奇偶校验 |
镜像 |
镜像 |
读性能 |
有所提高 |
有所提高 |
有所提高 |
有所提高 |
有所提高 |
有所提高 |
写性能 |
有所提高 |
稍降 |
有所提高 |
有所提高 |
有所提高 |
有所提高 |
至少磁盘数量 |
2 |
2 |
3 |
4 |
4 |
4 |
允许磁盘最多损坏数量 |
0 |
1 |
1 |
2 |
每组各1 |
每组各1 |
可用容量 |
100% |
50% |
(n-1)/n |
(n-2)/n |
50% |
50% |
以上是当前主流的RAID组合方式,至于如何选择,则是结合到使用者对数据安全性、数据冗余、数据可用性、投入成本等各方面的综合衡量。最终选择那一种方案,如何决策?其实还是一句话:适合自己的就是最好的。
(注:本文图片均来自网络,但本人未能确知作者,故无法注明出处,敬请见谅!)
以上是我对RAID磁盘阵列的理解!作为初学者,我对linux的认识还是很肤浅,上述可能有不正确的地方,如有错漏,希望各位能及时指正,共同进步。
我的QQ:153975050
在此感谢马哥及马哥团队,在linux的道路上引领我一直前进!
2016-05-31
原创文章,作者:马哥Net19_小斌斌,如若转载,请注明出处:http://www.178linux.com/17124
评论列表(4条)
标题都不写了?~
@stanley:? 不是有标题吗?
@马哥Net19_小斌斌:这是我给你加上去的
@stanley:哦哦,呵呵。。。