RAID原理详解
RAID 0(stripe,条带化存储):在RAID级别中最高的存储性能.
原理:是把连续的数据分散到多个磁盘上存取,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于他自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。
磁盘空间=磁盘总量=100%
需要的磁盘数>=2
读写性能=优秀=磁盘个数(n)*I/O速度=n*100%
块大小=每次写入的块大小=2的n次方=一般为2~512kb
优点: 1. 充分利用I/O总线性能使其带宽翻倍,读写速度翻倍。
- 充分利用磁盘空间,利用率为100%。
缺点: 1. 不提供数据冗余。
- 无数据检验,不能保证数据的正确性。
- 存在单点故障。
应用场景:
- 对数据完整性要求不高的场景,如:日志存储,个人娱乐。
- 要求读写效率高,安全性要求不高,如图像工作站。
RAID 1(Mirror,镜像存储):是磁盘阵列中单位成本最高的,磁盘利用率最低,但提供了很高的数据安全性和可用性。
原理:将一个两块硬盘所构成RAID磁盘阵列,其容量仅等于一块硬盘的容量,因为另一块只是当做数据“镜像”通过镜像实现数据冗余,成对的独立磁盘上产生互为备份的数据。当原始数据繁忙时,可直接从镜像拷贝中读取数据,因此RAID1可以提高读取性能。当一个磁盘失效时,系统可以自动切换到镜像磁盘上读写,而不需要重组失效的数据。最大允许互为镜像内的单个磁盘故障,如果出现互为镜像的两块磁盘故障则数据丢失。
磁盘空间=磁盘总量/2=50%
需要的磁盘数(n)>=2*n
读性能=优秀=I/O性能*n=200%
写性能=正常=I/O性能=100%
优点:
- 提供数据冗余,数据双倍存储。
- 提供良好的读性能
缺点:
- 无数据校验。
- 磁盘利用率低,成本高。
应用场景:
- 存放重要数据,如数据存储领域。
RAID 2:RAID 0的优化版本
原理:每次读写需要全组磁盘联动,提供汉明码错误校验机制,将数据进行编码后分区为独立的位,并将数据分别写入硬盘中。因为在数据中加入了错误修正码,输出数据的速率与驱动器组中速度最慢的相等。
磁盘空间<=磁盘总量
需要的磁盘数>=3
数据单位=字节
优点:
- 有数据校验机制
- 磁盘的寻道时间减少
缺点:
- 目前应用场景不多,基本被淘汰。
- 成本高。
应用场景:影像处理或者CAD/CAM的工作站
RAID 3:类似于RAID 2
原理:采用Bit-interleaving(数据交错存储)技术,它需要通过编码再将数据位分区后分别存在硬盘中,而将同位检查后单独存在一个硬盘中,但由于数据内的位分散在不同的硬盘上,因此就算要读取一小段数据资料都可能需要所有的硬盘进行工作,所以这种规格比较适于读取大量数据时使用。
磁盘空间=n-1
需要的磁盘数>=n+1
数据单位=字节
写性能=一般
读性能=良好
优点:
有数据校验机制
缺点:
校验盘很容易成为整个系统的瓶颈
应用场景:
- 写操作较少,读操作较多的应用环境,如:数据库、WEB服务器等。
- 适合大文件类型且安全性要求较高的应用,如视频编辑、硬盘播出机、大型数据库等。
RAID 4:与RAID 3类似
原理:RAID 4和RAID 3很像,数据都是依次存储在多个硬盘之上,奇偶校验码存放在独立的奇偶校验盘上,唯一不同的是,数据分割上RAID 3对数据的访问时按位进行的,RAID4是以数据块为单位。
磁盘空间=n-1
需要的磁盘数>=n+1
写性能=差
数据单位=块(扇区)
优点:
- 按块存储可以保证块的完整
- 有校验机制
缺点:
- 写效率差,每次写入需要生成校验
- 硬盘损耗高
应用场景:
对数据安全性高的环境,同RAID3
RAID 5:奇偶校验(XOR),RAID 0和RAID 1的折中方案。
原理:数据以块分段条带化存储。校验信息交叉地存储在所有的数据盘上。数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上,其中任意N-1块磁盘上都存储完整的数据。
磁盘空间=n-1
需要的磁盘数>=3
读写性能≈优秀=磁盘个数(n)*I/O速度=n*100%
优点:
- 读写性能高
- 有校验机制
- 磁盘空间利用率高
缺点:
磁盘越多安全性越差
应用场景:
安全性高,如金融、数据库、存储等、
RAID 6:与RAID 5相比,RAID 6增加了第二个独立的奇偶校验信息块。双重奇偶校验
原理:两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,即使两块磁盘同时失效也不会影响数据的使用。但RAID 6需要分配给奇偶校验信息更大的磁盘空间,写性能比RAID5差。
磁盘空间 = n-2
需要的磁盘数 ≥ 4
优点:
1、 良好的随机读性能
2、 有校验机制
缺点:
1、 写入速度差
2、 成本高
应用场景:
对数据安全级别要求比较高的企业
RAID 7:RAID 7并非公开的RAID标准,而是Storage ComputerCorporation公司的专利硬体产品名称。是一个完整的存储阵列。RAID 7有自身的实时操作系统用来管理阵列。
原理:
1、 物理上RAID 7主要包括两部分:一个运行实时操作系统的控制器;二.多个Channel磁盘组。
2、 逻辑上 RAID 7类似于RAID3和RAID4。磁盘分布于多个Channel,一个Channel包含一组磁盘,校验盘可以分布于任意Channel。Channel之间通过X-BUS连接。
3、 异步IO。IO读写操作以及奇偶校验都直接在缓存里面完成。控制器负责数据从缓存写入磁盘。
4、 可以根据需求,将部分磁盘配置为Hot Standy模式。
5、 提供SNMP远程监控管理功能。
优点:
1、 性能好,IO延迟低
缺点:
1、成本高
应用场景:
对存储性能要求高且没有高端技术团队的公司
RAID 01:RAID 0和RAID 1的组合形式
原理:先做RAID 0再将RAID 0组合成RAID 1,拥有两种RAID的特性。
磁盘空间= n/2 = 50%
4 ≥ 需要的磁盘数 ≥ 2*n
读写性能 = RAID0
优点:
1、 较高的IO性能
2、 有数据冗余
3、 无单点故障
缺点:
1、 成本稍高
2、 安全性比RAID 10 差
应用场景:
特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
RAID 10:RAID 0和RAID 1的组合形式
原理:先做RAID 1再将RAID 1组合成RAID 0,拥有两种RAID的特性,安全性高
磁盘空间=n/2=50%
4≤ 需要的磁盘数 ≥ 2*n
优点:
- RAID 10的读性能将优于RAID 01
- 较高的IO性能
- 有数据冗余
- 无单点故障
- 安全性高
缺点:
成本稍高
应用场景:特别适用于既有大量数据需要存取,同时又对数据安全性要求严格的领域,如银行、金融、商业超市、仓储库房、各种档案管理等。
RAID 50:RAID 50也被称为镜像阵列条带
原理先做RAID 5再将RAID 5组合成RAID 0,拥有两种RAID的特性。
需要的磁盘数≥ 6
RAID 53:一个镜射条带数组,硬盘里其中一个条带就是一个由3组以上的RAID 5组成RAID 3硬盘阵列
原理:先做RAID 5再将RAID 5组合成RAID 3,拥有两种RAID的特性。
需要的磁盘数≥ 6+1
RAID原理详解的更多相关文章
- linux基础-磁盘阵列(RAID)实例详解
磁盘阵列(RAID)实例详解 raid技术分类 软raid技术 硬raid技术 Raid和lvm的区别 为什么选择用raid RAID详解 RAID-0 RAID-1 RAID-5 Raid-10 R ...
- I2C 基础原理详解
今天来学习下I2C通信~ I2C(Inter-Intergrated Circuit)指的是 IC(Intergrated Circuit)之间的(Inter) 通信方式.如上图所以有很多的周边设备都 ...
- Zigbee组网原理详解
Zigbee组网原理详解 来源:互联网 作者:佚名2015年08月13日 15:57 [导读] 组建一个完整的zigbee网状网络包括两个步骤:网络初始化.节点加入网络.其中节点加入网络又包括两个 ...
- 块级格式化上下文(block formatting context)、浮动和绝对定位的工作原理详解
CSS的可视化格式模型中具有一个非常重要地位的概念——定位方案.定位方案用以控制元素的布局,在CSS2.1中,有三种定位方案——普通流.浮动和绝对定位: 普通流:元素按照先后位置自上而下布局,inli ...
- SSL/TLS 原理详解
本文大部分整理自网络,相关文章请见文后参考. SSL/TLS作为一种互联网安全加密技术,原理较为复杂,枯燥而无味,我也是试图理解之后重新整理,尽量做到层次清晰.正文开始. 1. SSL/TLS概览 1 ...
- 锁之“轻量级锁”原理详解(Lightweight Locking)
大家知道,Java的多线程安全是基于Lock机制实现的,而Lock的性能往往不如人意. 原因是,monitorenter与monitorexit这两个控制多线程同步的bytecode原语,是JVM依赖 ...
- [转]js中几种实用的跨域方法原理详解
转自:js中几种实用的跨域方法原理详解 - 无双 - 博客园 // // 这里说的js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同 ...
- 节点地址的函数list_entry()原理详解
本节中,我们继续讲解,在linux2.4内核下,如果通过一些列函数从路径名找到目标节点. 3.3.1)接下来查看chached_lookup()的代码(namei.c) [path_walk()> ...
- WebActivator的实现原理详解
WebActivator的实现原理详解 文章内容 上篇文章,我们分析如何动态注册HttpModule的实现,本篇我们来分析一下通过上篇代码原理实现的WebActivator类库,WebActivato ...
随机推荐
- Jmeter测试结果分析(上)
Jmeter测试结果分析这一篇,我打算分成上下两部分.上篇,主要讲述如何使用jmeter中Assertion对结果进行简单的分类:下篇,主要讲述的是当我们拿到测试结果后,我们应该如何去看待这些测试结果 ...
- C++数据结构之哈希表
哈希表的定义:哈希表是一种根据关键码去寻找值的数据映射结构,该结构通过把关键码映射的位置去寻找存放值的地方.键可以对应多个值(即哈希冲突),值根据相应的hash公式存入对应的键中. 哈希函数的构造要求 ...
- 利用Bag中的getCount()方法统计list集合中重复元素
实际应用场景:从Excel导入数据时,存在某个标识符相同的多条数据,需要进行合并,因此需要统计重复元素,可以利用Bag包下的getCount()进行统计,代码如下: package test.com. ...
- 队列:Beanstalkd介绍
一:介绍 Beanstalkd 是一个轻量级的内存型队列.它是典型的类Memcached设计,协议和使用方式都是同样风格.github:https://github.com/beanstalkd官网: ...
- 【AMAD】django-model-utils -- Django model使用的mixin和utils
动机 简介 个人评分 动机 为django model系统提供一些可重用的mixin和utils. 简介 django-model-utils1为Django Model提供了下嘛几种分类的utils ...
- 【AMAD】dogpile.cache -- 一个Python缓存API,提供一套通用的接口来适配不同的缓存后端
简介 动机 作用 用法 个人评分 简介 Dogpile1由两套子系统组成,其中一个是基于另一个来构建的. dogpile提供了dogpile lock的概念,这个控制结构让一个线程可以被选为一些资源的 ...
- vue--vue-resource实现 get, post, jsonp请求
vue-resource 实现 get, post, jsonp请求 除了 vue-resource 之外,还可以使用 axios 的第三方包实现实现数据的请求 之前的学习中,如何发起数据请求? 常见 ...
- lua编译器和ide
这里有一个网址,上面记录了大部分流行的LUA开发工具,包括IDE和Editor. http://www.wowwiki.com/Lua_editors 一.Eclipse LDT 1.语法高亮,自动提 ...
- [转帖]浪潮信息最大供应商英特尔(Intel):2018 年采购额 145.76 亿元
浪潮信息最大供应商英特尔(Intel):2018 年采购额 145.76 亿元 https://t.cj.sina.com.cn/articles/view/3172142827/bd130eeb01 ...
- 【计算机网络】-介质访问子层-(信道划分介质访问控制&随机访问介质访问控制)
[计算机网络]-介质访问子层-概述 介质访问控制子层功能 解决信道争用的协议,即用于多路访问信道上确定下一个使用者的协议 是数据链路层协议的一部分 介质访问控制子层位置 位于数据链路层的底部! 信道分 ...