RAID详解

1、什么是RAID

RAID:独立硬盘冗余阵列,旧称廉价磁盘冗余阵列,简称磁盘阵列。其基本思想就是将多个相对便宜的硬盘结合起来,成为一个磁盘阵列,是性能达到甚至超过一个昂贵、容量巨大的硬盘,根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。目前应用较多的有RAID0,RAID1,RAID4,RAID5,RAID6,RAID10,RAID01等。

简单来说,RAID把多个硬盘组合成为一个逻辑扇区,因此,操作系统只把它当作一个硬盘,不同的RAID有不同的特点,在不同的生产环境中,我们需要按照不同的要求妥善选择RAID。

2、RAID比较

RAID档次 最小硬盘 最大容错 可用容量 读性能 写性能 安全性 目的 应用环境
单一磁盘 1 0 1 1 1
0 2 0 n n n 一个硬盘异常,全部硬盘都会异常 追求最大容量与速度 可应用于缓存应用
1 2 n-1 1 n 1 最高,一边镜像卷正常即可 追求最大的安全性 个人、企业备份
4 3 1 n-1 1 1 高,在单独一块硬盘计算校验码 追求最大容量与较高的安全性 由单一校验磁盘制约整个raid性能,不常用
5 3 1 n-1 n-1 n-1 高,分散计算校验码 追求最大容量与最小预算 个人、企业备份
6 4 2 n-2 n-2 n-2 较raid5高 同raid5,但允许两块硬盘出现问题 个人、企业备份
10 4 n/2 n/2 n n/2 安全性高 整合raid1与raid0,理论速度较快 大型数据库应用
01 4 n/2 n/2 n n/2 较raid10差 同raid10,但两边存储区不允许同时坏一块硬盘 不常用
JBOD 1 0 n 1 1 同raid0 增加存储 大数据暂时储存

1、n代表硬盘总数

2、JBOD可接到现有硬盘,直接增加容量

RAID 0

RAID 0可称为调带,将两个以上的磁盘并联起来,成为一个大容量的磁盘。在存放数据时,分别分散存储在这些磁盘中,因此读写可并行处理,在所有RAID中的 RAID 0的速度是最快的,但是RAID 0 没有冗余能力,也不具备冗余能力,一块磁盘损坏将导致整个RAID不可用。

图片.png

RAID 1

RAID 1可称为镜像,在多线程操作中有较好的读性能,但是写性能较低,整体安全性很高,只需要一块磁盘正常,整个数据就可用,可靠性极高,其原理在主硬盘存放数据的同时也在镜像硬盘上写一样的数据,当主硬盘损坏,镜像盘可接剔主硬盘正常工作。整个RAID 1的容量受整个RAID 1组成磁盘的最小容量影响,即size=min(S1,S2,S3…)

图片.png

RAID 4

RAID 4将数据校验码存放在一块硬盘中,整个数据的读写都将受到这块硬盘的io制约,存在数据校验码恢复功能,最多可损坏1块,最少组成为3块磁盘。

图片.png

RAID 5

RAID 5是RAID 4的升级版,将数据的校验码存放在各个磁盘中,当数据损坏时,可通过校验码进行数据恢复,可靠性很高,最多可损坏1块,最少3块组成RAID 5,整个RAID5的磁盘容量计算为:size=(n-1)x min(S1,S2,S3…)

图片.png

RAID 6

与RAID 5 相比,RAID 6 增加了第二块校验码盘,采用两种不同校验码计算方式,数据可靠性很高,因此他允许同时损坏2块,但同时必须4块磁盘才可以组成RAID 6,整个RAID 6的容量计算方式:size=(n-2)x min(S1,S2,S3…)

图片.png

RAID 10/01

RAID 10是先镜射再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。

RAID 01则是跟RAID 10的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。

当RAID 10有一个硬盘受损,其余硬盘会继续运作。RAID 01只要有一个硬盘受损,同组RAID
0的所有硬盘都会停止运作,只剩下其他组的硬盘运作,可靠性较低。如果以六个硬盘建RAID 01,镜射再用三个建RAID
0,那么坏一个硬盘便会有三个硬盘离线。因此,RAID 10远较RAID 01常用。

图片.png

JBOD

数据的存放机制是由第一颗硬盘开始依序往后存放,即操作系统看到的是一个大硬盘(由许多小硬盘组成的)。JBOD的传输速率与I/O表现均与单颗硬盘无异。

size=sum(S1,S2,S3…)

原创文章,作者:N25_随心,如若转载,请注明出处:http://www.178linux.com/65551

(0)
N25_随心N25_随心
上一篇 2017-01-03 11:05
下一篇 2017-01-03 11:05

相关推荐

  • 系统基础之shell脚本编程详解4(数组及字符串处理,变量赋值和配置文件)

    系统基础之shell脚本编程详解4(数组及字符串处理,变量赋值和配置文件)     今天来讲shell脚本编程的最后一些内容,数组及字符串处理,变量赋值和配置文件.这些内容也是我们经常在工作中使用到的知识点.下面让我们来详细了解下: 数组:   程序=指令+数据        &…

    Linux干货 2016-08-24
  • 马哥教育网络第21期-第八周课程练习

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。   网桥从一个局域网接收MAC帧,拆封、校对、校验之后,按另一个局域网的格式重新组装,发往它的物理层。由于网桥是链路层设备,因此不处理数据链路层以上层次协议所加的报头。   集线器的主要功能是对接收到的信号进行再生整形放大,以扩大网络的传输距离,同时把所有节点…

    Linux干货 2016-10-24
  • 博客作业网络班22期+第5周(9.5-9.11)

    1、显示当前系统上root、fedora或user1用户的默认shell [root@MyCloudServer wjb]# egrep '^(root|fedora|user1)\>' /etc/passwd | cut -d: -f7/bin/bash 2、找出/etc/rc.d/init.d/functions文件中某单词后面…

    Linux干货 2016-09-15
  • 新鲜出炉的一篇好PPT,MySQL Optimizer团队力作

    新鲜出炉的一篇好PPT,MySQL Optimizer团队Senior Principal Software Engineer Øystein同学亲自操刀完成的《How to Analyze and Tune MySQL Queries for Better Performance》内容值得期待,有实现分析,有实战用例。有需要的朋友可以点击下载! 下载地址:…

    Linux干货 2015-02-27
  • 正则表达式练习

       grep练习  : 1 、显示/proc/meminfo 文件中以大小s 开头的行:  2 、显示/etc/passwd 文件中不以/bin/bash 结尾的行      3 、显示用户rpc 默认的shell        4 、找出/etc…

    Linux干货 2016-08-10
  • Linux基础知识之cp mv rm

    该博文以CentOS6.8_x86_64系统为基础,Xshell 5远程连接CentOS系统,以root身份登录系统和sjsir普通用户身份登录系统。 为什么要学习cp、mv、rm命令?     cp、mv、rm命令为Linux系统使用最长使用的三个命令之一,复制、移动和删除是我们平时处理一些文件必须要学会的命令,应该用于熟练掌握和使用的…

    Linux干货 2016-07-29

评论列表(1条)

  • 马哥教育
    马哥教育 2017-03-15 01:48

    能简单说明下在哪些场景会用到哪种raid最佳~继续加油!