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
下一篇 2017-01-03

相关推荐

  • 开班第一天,新获得的技能

    新接触命令 lscpu 显示CPU信息 gedit 文件名 类似于记事本 ** 注意 这个命令适用于图形界面。 cat /proc/partition 显示分区信息 cat /proc/meminfo 显示内存大小 cat /proc/swaps 显示虚拟内存 cat …

    Linux干货 2017-02-17
  • N-22-南京-修 第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@localhost xujie]# cp -a /etc/skel /home/tuser1 [root@localhost home]# chmod -R 700 tuser1 之前 [root@localho…

    Linux干货 2016-09-15
  • 编译安装nginx并实现反向代理负载均衡和缓存功能

    一、编译安装nginx 1、下载 [root@ns1 ~]# wget http://nginx.org/download/nginx-1.10.0.tar.gz 2、解压 [root@ns1 ~]# tar xf nginx-1.10.0.tar.gz [root@ns1 ~]…

    Linux干货 2016-05-25
  • 博客作业-N22第二周

    1、linux上的文件管理类命令都有那些,其常用的使用方法及其相关示例演示。 答: cp 复制文件 [root@localhost network-scripts]# cp ifcfg-eno16777736 ifcfg-eno.bak [root@localhost network-scripts]# ls ifcfg-eno16777736  …

    Linux干货 2016-08-22
  • mariadb基础应用

    mariadb基础应用 一、 前言 MariaDB is one of the most popular database servers in the world. It’s made by the original developers of MySQL and guaranteed to stay open source. Notable users …

    Linux干货 2016-12-16
  • rsyslog, mysql, loganalyzer联合实现

    一. rsyslog简介 rsyslog是一个自由软件, 是GPL的lincesed增强的syslogd. 它提供了Mysql和完全可配置的输出格式的支持. 1. 日志信息格式:      <优先级>时间戳 主机名 模块名/级别/信息摘要:内容      <priority>…

    Linux干货 2016-10-24

评论列表(1条)

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

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