常见RAID磁盘阵列组合简介

常见RAID磁盘阵列组合简介

   RAID,是Redundant Arrays of Inexpensive Disks的简写,磁盘阵列。现今的计算机世界,最值钱的是什么?软件、硬件?都不对,应该是承托在其之上的数据。对于我们来说,数据是无价的,硬件损坏了,可以重新购置。软件损坏了,也可以重新安装,但数据一旦丢失,就有可能再也找不回来了。硬盘作为存放数据的重要介质,其重要性不言而喻。但作为设备,就会有损坏的机会,如何避免因硬盘损坏而造成数据丢失呢? RAID就是一个很好的解决方案。

    RAID将一组硬盘连结成来,组成一个阵列,以避免单个硬盘损坏而带来的数据损失,同时亦提供了比单个硬盘高的可用性及容错性。

  

常见的组合方式有:RAID0、RAID1、RAID5、RAID6、RAID01、RAID10(其它RAID3RAID4等只是在实验室上存在,基本上没什么人用于生产环境,所以不作过多的介绍),它们分别的特性见下描述:

RAID0:

 RAID0.png

RAID0俗称“条带”,它将两个或多个硬盘组成一个逻辑硬盘,容量是所有硬盘之和,因为是多个硬盘组合成一个,故可并行写操作,写入速度提高,但此方式硬盘数据没有冗余,没有容错,一旦一个物理硬盘损坏,则所有数据均丢失。因而,RAID0适合于对数据量大,但安全性要求不高的场景,比如音像、视频文件的存储等。

RAID1:

RAID1.png

 

RAID1俗称“镜像”,它最少由两个硬盘组成,且两个硬盘上存储的数据均相同,以实现数据冗余。RAID1读操作速度有所提高,写操作理论上与单硬盘速度一样,但由于数据需要同时写入所有硬盘,实际上稍为下降。容错性是所有组合方式里最好的,只要有一块硬盘正常,则能保持正常工作。但它对硬盘容量的利用率则是最低,只有50%,因而成本也是最高。RAID1适合对数据安全性要求非常高的场景,比如存储数据库数据文件之类。

RAID5:

RAID5.JPG

 

RAID5最少由三个硬盘组成,它将数据分散存储于阵列中的每个硬盘,并且还伴有一个数据校验位,数据位与校验位通过算法能相互验证,当丢失其中的一位时,RAID控制器能通过算法,利用其它两位数据将丢失的数据进行计算还原。因而RAID5最多能允许一个硬盘损坏,有容错性。RAID5相对于其它的组合方式,在容错与成本方面有一个平衡,因而受到大多数使用者的欢迎。一般的磁盘阵列,最常使用的就是RAID5这种方式。

RAID6:

RAID 6.jpg

 

RAID6是在RAID5的基础上改良而成的,RAID6再将数据校验位增加一位,所以允许损坏的硬盘数量也由RAID5的一个增加到二个。由于同一阵列中两个硬盘同时损坏的概率非常少,所以,RAID6用增加一块硬盘的代价,换来了比RAID5更高的数据安全性。

另外,还有一些组合方式是上述方式的混合,以获取更高的可用性与容错性,比如:

RAID01:

RAID01.png

RAID01是RAID0与RAID1的组合,先将数据分成两组,然后再对两组数据进行镜像。

 

RAID10:

RAID10.png

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

(3)
马哥Net19_小斌斌马哥Net19_小斌斌
上一篇 2016-06-01 14:06
下一篇 2016-06-01 15:29

相关推荐

  • Linux发展及简单命令

    一 计算机的组成及其功能 冯·诺依曼提出的计算机体系结构:计算机由控制器、运算器、存储器、输入设备、输出设备五部分组成。 二 Linux的发行版 Linux发行版主要有三个分支:Debian、Slackware、Redhat。 (1)Debian:(以社区的方式运作) Ubuntu:基于Debian开发的开源Linux操作系统,主要针对桌面和服务器; Lin…

    2018-03-02
  • DNS基础及使用BIND搭建域名服务器

        本文主线是DNS服务相关概念和服务器搭建,在此之前了解一下域名这个东东很有其必要性,因为DNS服务就是应域名而生的。那么域名是什么哪?     域名     域名是用一串用点分开的字符串来表示的internet上的某一台或者一组计算机的名称,用于在数据传输时标识计算机的电子方位。举…

    Linux干货 2015-06-11
  • Linux基础操作-week5

    1、显示当前系统上root、fedora或user1用户的默认shell; 方式一: # whoami root # echo $SHELL /bin/bash 方式二: #grep user1 /etc/passwd|awk -F “:” ‘{print $7}’ /bin/bash 2、找出/etc/rc.…

    Linux干货 2016-11-27
  • 马哥教育网络班25期-第2周作业

    一、Linux文件管理类命令: (1)ls             list 用来显示目录列表             …

    Linux干货 2016-12-12
  • Linux进程管理

    一、程序与进程           1、程序         程序是为了达到特定的目的,可以被计算机运行并且由命令代码组成的语句序列。       &…

    Linux干货 2015-05-14
  • Linux基础–命令帮助的获取及history历史命令

    第一部分    Linux系统如何获取命令帮助     1、命令类型以及简单帮助的获取         linux系统上,基本命令分为两类,一类是内建命令,一类是外部命令。所谓内建命令,是指由linux内核自带的系统命令…

    Linux干货 2016-07-28

评论列表(4条)

  • stanley
    stanley 2016-06-01 15:27

    标题都不写了?~

    • 马哥Net19_小斌斌
      马哥Net19_小斌斌 2016-06-02 00:56

      @stanley? 不是有标题吗?

    • stanley
      stanley 2016-06-03 12:47

      @马哥Net19_小斌斌这是我给你加上去的

    • 马哥Net19_小斌斌
      马哥Net19_小斌斌 2016-06-03 21:40

      @stanley哦哦,呵呵。。。