软硬RAID 和 不常见的RAID
若转载请于明显处标明出处:http://www.cnblogs.com/kelamoyujuzhen/p/5561809.html
为啥子引入RAID?
存储最现实的两个问题:速度、容量
回顾计算机发展历史,以我们最常用的minicomputer为例,一个tower或cabinet也就装几块硬盘,虽然现在SATA单块盘都做到3T了,但是对于企业而言还是远远不够。这是容量问题。
速度问题:
1、无论单碟盘 还是 多碟盘,单位时间只能有一个磁头在读写,多磁头并发读写的产品目前还没有。
2、影响磁盘速度的主要原因在于换道,如何有效减少换道时间
针对 速度+容量 这2个问题,RAID问世了。将多块磁盘组成RAID,既提高了容量,又提高了速度(一块磁盘在换道,其他磁盘不一定啊,因此大大提高效率)。
RAID类型
软RAID
1、占用内存空间
2、占用CPU资源
3、软件RAID程序无法将安装有OS的那个Disk 分区做成RAID模式
硬RAID(RAID卡)
种类:
0通道RAID
无驱RAID
RAID on chip (ROC技术)
所谓初始化就是说在系统加电之后, CPU 执行系统总线特定地址上的第一句指令,这个地址便是主板 BIOS 芯片的地址。BIOS 芯片中包含着让 CPU 执行的第一条指令, CPU将逐条执行这些指令, 执行到一定阶段的时候, 有一条指令会让 CPU 寻址总线上其他设备的 ROM 地址(如果有)。 也就是说,系统加电之后, CPU 总会执行 SCSI 卡这个设备上 ROM 中的程序代码来初 始化这块卡。 初始化的内容包括检测卡型号 、 生产商以及扫描卡上的所有 SCSI 总线以找出每个设备并显示在显示器上。在初始化的过程中, 可以像进入主板 BIOS 样, 进入 SCSI 卡自身的BIOS中进行设置,设置的内容包括查看各个连接到SCSI总线上的设备的容量、生产商、状态、SCSI ID和LUN ID等。
其余RAID介绍见:004——最最常用的RAID
RAID 2
RAID0激进,RAID1太保守。RAID2是 RAID0 1的折中。引入校验盘,校验算法为汉明码。在写数据的时候写校验数据。
RAID 3
与RAID2 一样,只不过校验方式由汉明码改为逻辑校验。
RAID 4
拉个大弓,放个小屁。虚张声势而已
考虑到RAID2、3 他们的并发都是单次IO对多块磁盘之间的并发,那RAID4能不能做到多个IO的并发呢?当然可以,为此需要磁盘做出相应修改
要想多IO并发,就要保证有磁盘未被IO占用,为此可以增大Stripe深度。这样就将IO限制在数量很少的磁盘上面。同时避免不要连续读写一块磁盘,增大数据分布随机性。RAID4做到了这几点,但是忽略了一个问题——校验盘
每次IO,都是数据盘+校验盘一起写,校验盘成为了热点盘。即使某块盘上面的IO写完了,但是校验盘还在忙活,其他的IO看着这块空闲的磁盘也用不了,必须等待校验盘空闲下来才能上位。相当于面对大海却渴死了,因此,RAID4并没有实现并发IO。
RAID5E
RAID5 相比较RAID4 实现了并发IO(通过打散校验盘),看起来很美好,但是也有可靠性问题。试想,一旦一块磁盘跪了,针对这块故障盘的读IO,实际上其他磁盘+校验盘 算出来返回的。写IO是被RAID卡从定向到正常磁盘+校验盘的。外界感觉不到有磁盘故障。如果有一块盘故障,系统IO负担无疑加大,如置之不理,很有可能再坏一块盘,继而故障雪崩。RAID5的做法是在发现故障盘后,赶紧插上一块好的磁盘,其他磁盘+校验盘 计算出损坏的数据写到新插入的此磁盘上面。但是这有个前提,就是在恢复故障盘的时候不能再有其他磁盘损坏,否则玉石俱焚!为此引入热备盘,热备盘也跟校验盘一样被打散分布在各个磁盘上面。按照校验盘是否像数据盘一样条带化,又分为RAID5E、RAID5EE
软硬RAID 和 不常见的RAID的更多相关文章
- 什么是RAID?RAID有什么用?RAID原理
什么是RAID 硬盘是个很脆弱的东西,它经常会坏掉.所以,为了保证服务器可靠耐用,硬盘必须时时刻刻保持可用.所以有了RAID这个东西.它的目的是将好几个硬盘合并在一起,就算硬盘坏了一个,剩下还有好几个 ...
- MegaCli是一款管理维护硬件RAID软件,可以通过它来了解当前raid卡的所有信息,包括 raid卡的型号,raid的阵列类型,raid 上各磁盘状态
MegaCli 监控raid状态 转载weixin_30344131 最后发布于2015-10-16 13:05:00 阅读数 简介 MegaCli是一款管理维护硬件RAID软件,可以通过它来了 ...
- 服务器中常见的RAID
Standalone 最普遍的单磁盘储存方式. Cluster 集群储存是通过将数据分布到集群中各节点的存储方式,提供单一的使用接口与界面,使用户可以方便地对所有数据进行统一使用与管理. Hot sw ...
- Raid 5数据恢复原理以及raid 5数据恢复实际操作案例
Raid 5数据恢复算法原理 要理解 raid 5数据恢复原理首先要先认识raid5,"分布式奇偶校验的独立磁盘结构"也就是我们称之为的raid 5数据恢复有一个概念需要理解,也就 ...
- 模拟示例raid 5(5块磁盘 3块做raid 2块做备份 ) raid 10(5块磁盘) 修改版
RAID5:需要至少三块(含)硬盘,兼顾存储性能.数据安全和储存成本. RAID10:需要至少四块(含)硬盘,兼具速度和安全性,但成本很高. raid 10(5块磁盘) 1.添加硬盘设备(添加5块) ...
- 硬RAID和软RAID
RAID简介: RAID是 Redundant Array of Independent Disks的简写,意为独立磁盘冗余阵列,简称磁盘阵列.基本思想是把多个相对便宜的硬盘结合起来,称为一个磁盘阵列 ...
- 影响MySQL的性能(一)磁盘的选择
一.磁盘的选择也是影响MySQL的性能的重大因素之一 1.使用传统的机器硬盘读取数据的过程 2.如何选择传统机器硬盘的因素 二.使用RAID增加传统机器硬盘的性能 1.什么是RAID技术 2.常见的R ...
- 手动创建分区以及软硬raid的问题
本文章旨在介绍安装centos7时手动分区问题,及其所对应的软硬raid问题.在新建centos7系统时,需要手动分区时,提供给我们三个选项: 在上图中,默认选项为“Standard Partitio ...
- 《linux就该这么学》课堂笔记10 SWAP、磁盘容量配额、软硬链接、RAID
1988年,加利福尼亚大学伯克利分校首次提出并定义了RAID技术的概念.RAID技术通过把多个硬盘设备组合成一个容量更大.安全性更好的磁盘阵列,并把数据切割成多个区段后分别存放在各个不同的物理硬盘设备 ...
随机推荐
- [LeetCode] 849. Maximize Distance to Closest Person 最大化最近人的距离
In a row of seats, 1 represents a person sitting in that seat, and 0 represents that the seat is emp ...
- Appium移动自动化测试-----(六)3.AppiumDesktop功能描述
一般功能 这些能力跨越多个驱动因素. 能力 描述 值 automationName 使用哪个自动化引擎 Appium(默认)或Selendroid或者UiAutomator2或者Espresso对于A ...
- 探索安卓热修复框架AndFix的奥秘
虽然阿里的AndFix框架已经出来很长时间了,但是还不了解它的同学依然挺多,接下来就跟着我一起来到AndFix的世界里一起看看,如何达到不用重新安装app就可以修复bug. 1.什么是AndFix? ...
- LeetCode 171. Excel表列序号(Excel Sheet Column Number) 22
171. Excel表列序号 171. Excel Sheet Column Number 题目描述 给定一个 Excel 表格中的列名称,返回其相应的列序号. 每日一算法2019/5/25Day 2 ...
- spring boot datasource 参数设置
datasource spring.dao.exceptiontranslation.enabled是否开启PersistenceExceptionTranslationPostProcessor,默 ...
- [转帖]上云测试,这些关键点你get 到没有
上云测试,这些关键点你get 到没有 https://www.cnblogs.com/mypm/p/10852656.html?tdsourcetag=s_pcqq_aiomsg sticky 还有s ...
- 数组模拟循环队列(java实现)
1.front变量的含义:front就指向队列的第一个元素,也就是说arr[front]就是队列的第一个元素front的初始值=0. 2.rear变量的含义:rear指向队列的最后一个元素的后一个位置 ...
- C++中的const的简单用法
一.符号常量的声明 常量声明的语句的形式: const + 数据类型说明符 + 常量名 = 常量值 数据类型说明符 + const + 常量名 = 常量值 注意: 符号常量 ...
- 02 Python 函数的一些小笔记
函数的返回值 1.使用return可以返回多个值,如:return a,b 返回的数据类型是元组型2.接收返回的元组可以如:c,d=demo() (假设demo()返回a,b元组),需要注意的是,接收 ...
- [tomcat] 连接池参数maxActive、maxIdle 、maxWait 等
maxActive 连接池支持的最大连接数,这里取值为20,表示同时最多有20个数据库连接.设 0 为没有限制.maxIdle 连接池中最多可空闲maxIdle个连接 ,这里取值为20,表示即使没有数 ...