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

相关推荐

  • 内部命令与外部命令

    内部命令与外部命令 内部命令在系统启动时就调入内存,是常驻内存的,所以执行效率高。 外部命令是系统的软件功能,用户需要时才从硬盘中读入内存。 1.type type COMMAND 判断一个命令的类型即判断一个命令是否为内置命令。   2.enable(内部命令) enable既可以查看内部命令,同时也可以判断是否为内部命令 enable 显示所有…

    2017-07-15
  • 基于BIND实现的DNS正反解析及主从DNS的配置

    基于BIND实现的DNS正反解析及主从DNS的配置 标签: DNS正反解析 DNS主从复制 测试环境 准备2台虚拟机,一台为主DNS,IP地址为:192.168.103.161。另一台为从DNS,IP地址为:192.168.103.162两台都装好bind,所需包有:bind,bind-utils,bind-libs 主DNS的配置文件 配置主文件/etc/…

    Linux干货 2016-04-11
  • Linux启动之grub详解,故障排除,自建linux

    概述     上篇我们以CentOS6为例介绍了一下系统启动流程,本篇将承接上篇,详细的介绍一下系统启动流程中的grub,以及系统启动过程中的各种故障的排除,以及利用现有内核自己构建一个能够正常启动的简单Linux系统。具体分为一下几个部分:     1、grub相关概念详解 &…

    Linux干货 2016-09-13
  • 企业实时同步方案—-Sersync介绍

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://nolinux.blog.51cto.com/4824967/1433109 Sersync 项目利用 Inotify 和 Rsync 技术实现对服务器数据实时同步的解决方案,其中 Inotify 用于监控 Sersync…

    Linux干货 2016-08-15
  • Linux基础知识之IO重定向

    该博文以CentOS6.8_x86_64系统为基础,Xshell 5远程连接CentOS系统,以root身份登录系统。  什么是I/O重定向?       所谓I/O重定向简单来说就是一个过程,这个过程捕捉一个文件,或者命令,程序,脚本,甚至脚本中的代码块(codeblock)的输出,然后把捕捉到的输出,作为输入发送给…

    Linux干货 2016-07-26
  • N26-第二周博客作业

    一、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 一) 目录管理命令 1. cd :用于切换目录。命令格式为:cd dirname 命令使用技巧: ~]# cd 进入用户主目录 ~]# cd – 进入上一次所在目录 ~]# cd / 进入根目录 ~]# cd ~ 进入用户主目录 ~]# cd .. 返回上一级…

    2017-03-01

评论列表(1条)

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

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