常见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

相关推荐

  • 马哥教育网络班21期第9周课程练习

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i nologin_user;other_user all_users=`awk -F':'…

    Linux干货 2016-09-19
  • vim编辑器

    回顾:     正则表达式(BRE, ERE)     BRE:字符匹配:., [], [^]     次数匹配:*,\?,\+,\{m\},\{m,n}     位置锚定:^,$,\<,\>     分组及引用:(),\1,\2,…&…

    Linux干货 2016-12-23
  • Linux的文件查找之find的使用

    文件查找   本章节内容:   使用locate命令   使用find命令   使用Gnome搜索工具    一、文件的查找(find和locate的对比): 文件查找:是在文件系统上查找符合条件的文件。 locate find 查找时效性 非实时查找 实时查找 文件索引数据库 需要依赖查询系统上预…

    Linux干货 2016-08-15
  • N26-第六周

    请详细总结vim编辑器的使用 vim 模式化的编辑器 vim的三种模式:1.编辑模式(命令模式)                          2.输入模式          …

    Linux干货 2017-03-13
  • M20 – 1- 第三周博客:Linux中的权限以及特殊权限

    上一篇讲到了用户与用户组,相信大家都明白了Linux中用户与用户组的含义和用处,那接下来讲的就是Linux中设置用户与用户组有使用权限。 Linux用户权限 何为权限,权限(privilege)是指某个特定的用户具有特定的系统资源使用权力,而权限又有哪几种呢。 Linux用户中主要针对三类着三种权限:读、写、执行,而Linux中存在着目录与文件,而目录的权限…

    Linux干货 2016-08-08
  • 第八周作业(网络、bash脚本)

    1-3,计算机网络基础博客已总结,简要补充 协议的分层 为了使那些比较复杂的网络协议更加简单化。ISO根据各通信协议的功能将网络体系分成七层。 在这个分层中,下层为上一层提供服务。上下层之间进行交互时所遵循的约定叫做“接口”。同层之间的交互所遵循的约定叫做“协议” 说的更形象一点,两个中国人打电话这个通信。就可以分为两层,同层之间的叫协议,我说汉语,你也说汉…

    Linux干货 2016-12-18

评论列表(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哦哦,呵呵。。。