一.什么是RAID

磁盘阵列全名是『Redundant Arrays of Inexpensive Disks, RAID 』,英翻中的意思是:容错式廉价磁盘阵列。 RAID 可以透过一个技术(软件或硬件),将多个较小的磁盘整合成为一个较大的磁盘装置;而这个较大的磁盘功能可不止是储存而已,他还具有数据保护的功能呢。RAID可以充分发 挥出多块硬盘的优势,可以提升硬盘速度,增大容量,提供容错功能够确保数据安全性,易于管理的优点,在任何一块硬盘出现问题的情况下都可以继续工作,不会 受到损坏硬盘的影响

二.Raid的级别

1.RAID 0

RAID 0 又称为 Stripe 或 Striping,它代表了所有 RAID 级别中最高的存储性能。RAID 0 提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。
如图 1 所示:系统向三个磁盘组成的逻辑硬盘(RADI 0 磁盘组)发出的 I/O 数据请求被转化为 3 项操作,其中的每一项操作都对应于一块物理硬盘。我们从图中可以清楚的看到通过建立 RAID 0,原先顺序的数据请求被分散到所有的三块硬盘中同时执行。

从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了 3 倍。 但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值,但是,大量数据并行传输与串行传输比较,提速效果显著显然毋庸置疑。
RAID 0 的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。
RAID 0 具有的特点,使其特别适用于对性能要求较高。(最少两块盘)

2.RAID1

RAID 1 又称为 Mirror 或 Mirroring,它的宗旨是最大限度的保证用户数据的可用性和可修复性。 RAID1 的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。当读取数据时,系统先从 RAID 0 的源盘读取数据,如果读取数据成功,则系统不去管备份盘上的数据;如果读取源盘数据失败,则系统自动转而读取备份盘上的数据,不会造成用户工作任务的中断。当然,我们应当及时地更换损坏的硬盘并利用备份数据重新建立 Mirror,避免备份盘在发生损坏时,造成不可挽。

(最少两块盘)

3.Raid 4

Raid4带奇偶校验码的独立磁盘结构

RAID 4是以扇区作数据分段,各磁盘相同位置的分段形成一个校验磁盘分段(parity block),放在校验磁盘。这种方式可在不同的磁盘平行执行不同的读取命今,大幅提高磁盘阵列的读取性能;但写入数据时,因受限于校验磁盘,同一时间只能作一次,启动所有磁盘读取数据形成同一校验分段的所有数据分段,与要写入的数据做好校验计算再写入。但校验磁盘形成RAID 4的瓶颈,降低了性能,因有RAID 5而使得RAID 4较少使用

4.raid 5

RAID 5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 以四个硬盘组成的 RAID 5 为例,其数据存储方式如下图所示:图中,P0 为 D0,D1 和 D2 的奇偶校验信息,其它以此类推。

RAID 5 不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组
成 RAID5 的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当 RAID5 的一个
磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
RAID 5 可以理解为是 RAID 0 和 RAID 1 的折衷方案。RAID 5 可以为系统提供数据安全保障,但保障
程度要比 Mirror 低而磁盘空间利用率要比 Mirror 高。RAID 5 具有和 RAID 0 相近似的数据读取速度,只
是多了一个奇偶校验信息,写入数据的速度比对单个磁盘进行写入操作稍慢。同时由于多个数据对应一个(最少三块盘)

5.RAID6

RADI6技术是在RAID 5基础上,为了进一步加强数据保护而设计的一种RAID方式,实际上是一种扩展RAID 5等级。与RAID 5的不同之处于除了每个硬盘上都有同级数据XOR校验区外,还有一个针对每个数据块的XOR校验区。当然,当前盘数据块的校验数据不可能存在当前盘而是交错存储的,具体形式见图

RAID-6和RAID-5一样对逻辑盘进行条带化然后存储数据和校验位,只是对每一位数据又增加了一位校验位。这样在使用RAID-6时会有两块硬盘用来存储校验位,增强了容错功能,同时必然会减少硬盘的实际使用容量。以前的raid级别一般只允许一块硬盘坏掉,而RAID-6可以允许坏掉两块硬盘,因此,RAID-6 (要求至少4块硬盘)。

6.RAID 0+1与RAID10

RAID 0 和 RAID 1 的组合称为 RAID 0+1,或称为 RAID 10。如下所述,它具有一些有趣的优越性。通
过将 RAID 0 分块的速度和 RAID 1 镜像的冗余进行组合,结果产生了一个快速、没有写开销、具有极好冗
余性质的子系统。

Raid 0+1

Raid 10:先建立raid1,在建raid0

RAID1+0与RAID0+1的区别:

RAID 1+0是先镜射再分区数据,再将所有硬盘分为两组,视为是RAID 0的最低组合,然后将这两组各自视为RAID 1运作。RAID 0+1则是跟RAID 1+0的程序相反,是先分区再将数据镜射到两组硬盘。它将所有的硬盘分为两组,变成RAID 1的最低组合,而将两组硬盘各自视为RAID 0运作。性能上,RAID 0+1比RAID 1+0有着更快的读写速度。可靠性上,当RAID 1+0有一个硬盘受损,其余三个硬盘会继续运作。RAID 0+1 只要有一个硬盘受损,同组RAID 0的另一只硬盘亦会停止运作,只剩下两个硬盘运作,可靠性较低。因此,RAID 10远较RAID 01常用。

RAID总结:

RAID Level

性能提升

冗余能力

空间利用率

磁盘数量(块)

允许磁盘故障数

优点

缺点

RAID 0

读、写提升

100%

至少2

不允许

读写性能,利用率高

缺乏冗余能力

RAID 1

读性能提升,写性能下降

50%

至少2

50%

读性能提升,具有冗余

写性能下降,磁盘利用率低

RAID 4

读、写提升

n*(n-1)/n

至少3

1

读写性能提升

瓶颈在校验盘上

RAID 5

读、写提升

n*(n-1)/n

至少3

1

读写性能提升

仅允许坏一块盘

RAID 6

读、写提升

n*(n-2)/n

至少4块

2

读写性能提升

磁盘利用率降低,写入速度没有raid5块

RAID 1+0

读、写提升

50%

至少4

50%

读写性能提升

磁盘利用率低

RAID 0+1

读、写提升

50%

至少4

50%

读写性能提升

磁盘利用率低,容错性没有raid10好

RAID 详解的更多相关文章

  1. Raid详解

    Raid详解 一.什么是RAID 磁盘阵列全名是『Redundant Arrays of Inexpensive Disks, RAID 』,英翻中的意思是:容错式廉价磁盘阵列. RAID 可以透过一 ...

  2. Linux阵列 RAID详解

    主要内容:(笔记总结--会不定时补充.修改,如有错误,欢迎指正探讨)    一. RAID详解   二. mdadm工具介绍   三. 创建一个RAID的基本过程   四. 磁盘阵列的管理   五. ...

  3. Linux阵列 RAID详解 (转)

    原文链接:http://molinux.blog.51cto.com/2536040/516008   一. RAID详解   二. mdadm工具介绍   三. 创建一个RAID的基本过程   四. ...

  4. RAID详解[RAID0/RAID1/RAID10/RAID5]

    一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘 ...

  5. 转载: RAID详解[RAID0/RAID1/RAID10/RAID5]

    一.RAID定义 RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁 ...

  6. Linux 硬件RAID详解系统功能图

    RAID-0(条带模式) 特点: 在读写的时候可以实现并发,所以相对其读写性能最好,每个磁盘都保存了完整数据的一部分,读取也采用并行方式,磁盘数量越多,读取和写入速度越快. 因为没有冗余,一个硬盘坏掉 ...

  7. RAID详解[RAID0/RAID1/RAID5]

    RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘,同时希望磁盘失 ...

  8. RAID详解[RAID0/RAID1/RAID10/RAID5] (转)

    一.RAID定义RAID(Redundant Array of Independent Disk 独立冗余磁盘阵列)技术是加州大学伯克利分校1987年提出,最初是为了组合小的廉价磁盘来代替大的昂贵磁盘 ...

  9. 运维笔记之yum,rpm,挂载,磁盘管理和raid详解

    yum 与 rpm centos6,7 主要有rpm和yum这两种包管理软件,两种包的管理各有用处,其中最主要区别是:  yum使用简单但需要联网,yum会去网上的yum包源去获取所需要的软件包.而r ...

随机推荐

  1. (一)基于阿里云的MQTT远程控制(Android 连接MQTT服务器,ESP8266连接MQTT服务器实现远程通信控制----简单的连接通信)

    如果不了解MQTT的可以看这篇文章  http://www.cnblogs.com/yangfengwu/p/7764667.html http://www.cnblogs.com/yangfengw ...

  2. Url Rewrite 再说Url 重写

    前几天看到园子里一篇关于 Url 重写的文章<获取ISAPI_Rewrite重写后的URL>, URL-Rewrite 这项技术早已不是一项新技术了,这个话题也已经被很多人讨论过多次.搜索 ...

  3. commons-dbutils 字段名称转换

    我们在写bean的时候,字段通常都使用小驼峰命名法,但是在设计数据库时,一般使用下划线分割命名.这样,在取出数据库字段时,还需要转换.如何简洁的实现这种转换呢? 你能遇到的问题,只要是普遍存在的,大家 ...

  4. Robot Framework学习笔记(九)------创建资源和用户关键字

    一.测试套件下创建用户关键字 1.创建关键字测试套件右击->点击new user keyword,然后输入name,点击OK保存. 2.在用户关键字的edit点击settings,然后输入Arg ...

  5. MicroPython支持的开发板:高性能、低成本创客首选

    Python的开放.简洁.黏合正符合了现发展阶段对大数据分析.可视化.各种平台程序协作产生了快速的促进作用.自Python3的发布到现在已有五六年的时间,从刚发布的反对声音到慢慢被接受与喜欢经过了太漫 ...

  6. RGB颜色 对照表

      来自为知笔记(Wiz)

  7. 从MongoDB的ObjectId中获取时间信息

    MongoDB默认使用_id字段作为主键,类型为ObjectId.ObjectId的生成有一定的规则,详情可以查看这篇文章 - MongoDB深究之ObjectId.如果你在写入数据库的时候忘记写入创 ...

  8. yield next和yield* next的区别

    yield next和yield* next之间到底有什么区别?为什么需要yield* next?经常会有人提出这个问题.虽然我们在代码中会尽量避免使用yield* next以减少新用户的疑惑,但还是 ...

  9. System.Windows.Forms.PropertyGrid的使用

    PropertyGrid 控件简介 .NET 框架 PropertyGrid 控件是 Visual Studio .NET 属性浏览器的核心.PropertyGrid 控件显示对象或类型的属性,并主要 ...

  10. Centos6.4三种更改hostname的方法之间的对比

    首先,利用hostname命令查看一下当前主机的主机名,在终端输入hostname,会发现显示的是完整的主机名称(主机名.域名),其中主机名与进入终端后:登录名@主机名,显示的一致,如下图所示: 其次 ...