超全面的的常用RAID详解

磁盘阵列(Redundant Arrays of Independent Disks,RAID),全称独立磁盘冗余阵列。

磁盘阵列是由很多廉价的磁盘,组合成一个容量巨大的磁盘组,利用个别磁盘提供数据所产生加成效果提升整个磁盘系统效能。利用这项技术,将数据切割成许多区段,分别存放在各个硬盘上。
利用同位检查(ParityCheck)的观念,在数组中任意一个硬盘故障时,仍可读出数据,在数据重构时,将数据经计算后重新置入新硬盘中。
相同的数据存储在多个硬盘的不同的地方的方法。通过把数据放在多个硬盘上(冗余),输入输出操作能以平衡的方式交叠,改良性能。因为多个硬盘增加了平均故障间隔时间(MTBF),储存冗余数据也增加了容错。
?
分类
一是外接式磁盘阵列柜、二是内接式磁盘阵列卡,三是利用软件实现

RAID分为很多种类,常见的有一下六种,如下图所示

RAID级别 原理 磁盘空间 需要磁盘数 读写性能 块大小 优点 缺点 应用场景
RAID0 (条带化存储) 把连续的数据分散到多个磁盘上存取系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。 100% >=2 磁盘个数(n)I/O速度(n100%) 2的n次方( 一般为2~512KB) 充分利用I/O总线性能使其带宽翻倍,读写速度翻倍;充分利用磁盘空间,利用率为100% 无数据冗余,无数据校验,不能保证该数据的正确性,存在单点故障 对数据完整性不高,如:日志存储,个人娱乐;读写效率高,如图像工作站
RAID1(镜像存储) 将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当作数据“镜像”通过镜像实现数据冗余,成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID1可以提高读取性能。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。最大允许互为镜像内的单个磁盘故障,如果出现互为镜像的两块磁盘故障则数据丢失 %50(磁盘总量/2) >=2*n 读性能:I/O性能*n(200%);写性能:I/O性能(100%) 提供数据冗余,数据双倍存储;提供良好的读性能 无数据校验,磁盘利用率低,成本高 存放重要的数据,如数据存储领域
RAID2(RAID0的优化版本) 每次读写需要全组磁盘联动,,提供汉明码错误校验机制,将数据进行编码后分区为独立的位,并将数据分别写入硬盘中。因为在数据中加入了错误修正码,输出数据的速率与驱动器组中速度最慢的相等 <=磁盘总量 >=3 有数据校验机制 磁盘的寻道时间减少 成本高 影像处理或者CAD/CAM的工作站
RAID3(类似于RAID2。数据交错存储) 采用Bit-interleaving(数据交错存储)技术,它需要通过编码再将数据位分区后分别存在硬盘中,而将同位检查后单独存在一个硬盘中,但由于数据内的位分散在不同的硬盘上,因此就算要读取一小段数据资料都可能需要所有的硬盘进行工作,所以这种规格比较适于读取大量数据时使用 n-1 >=n+1 写性能:一般;读性能:良好 有数据校验机制 校验盘很容易成为整个系统的瓶颈 写操作较少,读操作较多的应用环境,如:数据库、web服务器等;适合大文件类型且安全性要求较高的应用,如视频编辑、硬盘播出机、大型数据库等。
RAID5(奇偶存储,条带化存储) 据以块分段条带化存储。校验信息交叉地存储在所有的数据盘上。数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据 n-1 >=3 磁盘个数(n)I/O速度(n100%) 读写性能高,有校验机制,磁盘空间利用率高 磁盘越多安全性越差 安全性高,如金融、数据库、存储等
RAID01(RAID0和RAID1的组合形式) 先做RAID0,再将RAID0组合成RAID1,拥有两种RAID的特性 50%(n/2) 2*n~4 RAID0 较高的IO性能,有数据冗余,无单点故障 成本稍高,安全性能比RAID10差 适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等
RAID01(RAID0和RAID1的组合形式) 先做RAID1再将RAID1组合成RAID0,拥有两种RAID的特性 50% 2*n~4 RAID0 RAID10读性能优于RAID01,较高的IO性能,有数据冗余,无单点故障,安全性能高 成本稍高 适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等

原文地址:http://blog.51cto.com/13363488/2287347

时间: 2024-10-15 16:25:54

超全面的的常用RAID详解的相关文章

Linux阵列 RAID详解 (转)

原文链接:http://molinux.blog.51cto.com/2536040/516008   一. RAID详解   二. mdadm工具介绍   三. 创建一个RAID的基本过程   四. 磁盘阵列的管理   五. RAID优化 RAID详解:   描述:RAID: (Redundant Array of indenpensive Disk) 独立磁盘冗余阵列: 磁盘阵列是把多个磁盘组成一个阵列,当作单一磁盘使用,它将数据以分段(striping)的方式储存在不同的磁盘中,存取数据时

Linux阵列 RAID详解

主要内容:(笔记总结--会不定时补充.修改,如有错误,欢迎指正探讨)    一. RAID详解   二. mdadm工具介绍   三. 创建一个RAID的基本过程   四. 磁盘阵列的管理   五. RAID优化 RAID详解:   描述:RAID: (Redundant Array of indenpensive Disk) 独立磁盘冗余阵列: 磁盘阵列是把多个磁盘组成一个阵列,当作单一磁盘使用,它将数据以分段(striping)的方式储存在不同的磁盘中,存取数据时,阵列中的相关磁盘一起 动作

Nginx核心配置文件常用参数详解

Nginx核心配置文件常用参数详解 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 关于Nginx权威文档的话童鞋们可以参考Nginx官方文档介绍:http://nginx.org/en/docs/http/ngx_http_core_module.html.本篇博客只列出来了常用的参数介绍,用这些参数说明来定制化我们自己的nginx的web服务器等等. 一.正常运行的必备配置 1>.user username [groupname]; #以那个用户身份运行,以在configu

logback logback.xml 常用配置详解

一:根节点 包含的属性: scan: 当此属性设置为true时,配置文件如果发生改变,将会被重新加载,默认值为true. scanPeriod: 设置监测配置文件是否有修改的时间间隔,如果没有给出时间单位,默认单位是毫秒.当scan为true时,此属性生效.默认的时间间隔为1分钟. debug: 当此属性设置为true时,将打印出logback内部日志信息,实时查看logback运行状态.默认值为false. 例如: <configuration scan="true" scan

编程常用设计模式详解--(上篇)(工厂、单例、建造者、原型)

参考来自:http://zz563143188.iteye.com/blog/1847029 一.设计模式的分类 总体来说设计模式分为三大类: 创建型模式,共五种:工厂方法模式.抽象工厂模式.单例模式.建造者模式.原型模式. 结构型模式,共七种:适配器模式.装饰器模式.代理模式.外观模式.桥接模式.组合模式.享元模式. 行为型模式,共十一种:策略模式.模板方法模式.观察者模式.迭代子模式.责任链模式.命令模式.备忘录模式.状态模式.访问者模式.中介者模式.解释器模式. 二.设计模式的六大原则 1

logback logback.xml常用配置详解(三) &lt;filter&gt;

转自:logback logback.xml常用配置详解(三) <filter> logback 常用配置详解(三) <filter> <filter>: 过滤器,执行一个过滤器会有返回个枚举值,即DENY,NEUTRAL,ACCEPT其中之一.返回DENY,日志将立即被抛弃不再经过其他过滤器:返回NEUTRAL,有序列表里的下个过滤器过接着处理日志:返回ACCEPT,日志会被立即处理,不再经过剩余过滤器. 过滤器被添加到<Appender> 中,为<

logback logback.xml常用配置详解(二)&lt;appender&gt;

logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的组件. <appender>有两个必要属性name和class.name指定appender名称,class指定appender的全限定名. 1.ConsoleAppender: 把日志添加到控制台,有以下子节点: <encoder>:对日志进行格式化.(具体参数稍后讲解 ) &

logback 常用配置详解(二) &lt;appender&gt;

logback 常用配置详解(二) <appender> <appender>: <appender>是<configuration>的子节点,是负责写日志的组件. <appender>有两个必要属性name和class.name指定appender名称,class指定appender的全限定名. 1.ConsoleAppender: 把日志添加到控制台,有以下子节点: <encoder>:对日志进行格式化.(具体参数稍后讲解 ) &

curl常用选项详解

curl常用选项详解 作者:尹正杰 又是下班的时间了,让我们一起来学习一下今天的Linux命令吧~我一半只把自己常用的参数列出来,其他的有但是我们几乎不常用,大家是 可以有兴趣的话可以自己参考哟~嘻嘻!在Linux中curl是一个利用URL规则在命令行下工作的文件传输工具,可以说是一款很强大的http命令 行工具.它支持文件的上传和下载,是综合传输工具,但按传统,习惯称url为下载工具. 1.用curl抓取网页数据