磁盘管理三-raid
前言:何为raid
raid是利用多个磁盘组成一个可提升效能、可包含冗余的磁盘阵列组。常用于数据吞吐量大(视频),冗余要求高的场景
当前raid包含了raid0-7,以及组合方式raid10,raid01,raid50等。
下面说下各个raid的特点:
1、raid0 称之为条带
-1 所有raid中读写速度最快,采用独立存取(数据分块),依次写入各个磁盘,写略有降低,读巨量提升
-2 所有raid中最不安全,因为他没有冗余备份能力
-3 磁盘数量n>=2,使用效率100%
-4 只要有一块盘损坏,则数据就会丢失
2、raid1 称之为镜像(数据冗余度要求高) 常用
-1 读写速度中等,独立存取,依次写入一个磁盘组的各个磁盘,同时再次写入另一个镜像磁盘组的各个磁盘,写中等下降,读性能提升100%,两个组同时读
-2 允许2个磁盘组中任意一个组损坏,但不能同时损坏,但是一个组一旦发生问题,还原同步将消耗大量带宽
-3 磁盘数量2的倍数,使用效率50%
3、raid2-3 专用奇偶校验阵列(不常用)
-1 采用并行存取(数据块再次分块),同时对数据进行异或运算,将运算结果存入校验盘,写性能最低,读无影响,但整体性能由校验盘决定,因为校验盘速度慢,则整 体性能就不行
-2 采用异或运算方式恢复数据,异或运算原理:相同为假0,不同为真1例如:
原数据(异或运算) 1 0 = 1
损坏后 1 ?= 1
再次异或运算
恢复后 ?=0
因此,可允许一个盘损坏,但是损坏后,需尽快换盘(因为丢失数据均需异或运算得出,大大增加剩余盘的压力,更有可能在新盘加入后,还需要进行恢复,此过程指不 定剩余盘也因为压力过大也坏掉了,那就彻底完了)
-3 磁盘数量n>=3,使用效率(n-1)/n
4、raid4 校验盘(不常用)
-1 采用独立存取,其他与raid3相同
5、raid5 奇偶校验盘(web/mail/一定量的mysql场景) 常用
-1 独立存取,写效率中等,读效率高,速度不如raid0
-2 将校验信息不在存放到单一盘上,而是分散到各个磁盘中,可允许一块盘损坏,但是新盘重建很复杂,速度很慢,安全不如raid1
-3 磁盘数量n>=3,使用效率(n-1)/n
-4 各方面处于raid0和raid1之间
6、raid6
-1 p+q方式,将两个校验码分散到所有盘上
-2 DP方式,专属两个校验盘
7、raid7 新型存储,自身管理(有ram,cpu,操作系统),不消耗主机资源
8、raid10 镜像阵列条带 常用
-1 先raid1,将磁盘分成多个组(每个组内磁盘为2的倍数),每个组按照raid1的方式再次重组,即 a|b && c|d && e|f && g|h 关系,a与b数据相同,cd相同,ef相同,gh相同,然后四个raid1小组组成raid0
-2 允许每个raid1组损坏其中的一个子磁盘组,但是不能整个raid1组损坏
9、raid01
-1 先raid0,将磁盘分为两组(后建立raid1,致使必须分成两组),之后按照raid1方式建立 即abcd|efgh关系,abcd与efgh数据相同,两个大组组成raid0
-2 冗余和raid1相同,两个磁盘组,只能损毁一个
-3 各方面均不如raid10
10、raid50(构建不易,性能佳)
-1 将磁盘分为多个raid5组(组内磁盘n>=3),各个组按照raid0的方式构建,读性能好,写性能略好,冗余能力好,重建时间低于raid5
-2 每一个raid5组有一个冗余盘,故冗余盘(可损坏的盘)=raid5组的数量,但是每一个raid5子组只能损坏一个盘
-3 raid5组越多,并行读取能力越低(组越多,冗余盘越多,可用盘越少,读取性能下降),冗余能力越强,反之,亦然
附:

raid存储器相关:
raid存储器芯片速度快,硬盘速度慢,如何解决,靠存储器上的内存,存储器将数据放于内存,之后内存转至硬盘,但是如果内存转至硬盘的过程中,
发生意外停电,如何解决,靠存储器上的电池,因此,raid是否包含内存和电池,也是需要考虑的。
磁盘管理三-raid的更多相关文章
- 磁盘管理之 raid 文件系统 分区
第1章 RAID 磁盘阵列 1.1 使用raid的目的 1)获得更大的容量 2)让数据更安全 3)读写速度更快 1.2 raid0.raid1.raid5.raid10对比 磁头 0磁道 1扇区 前4 ...
- linux磁盘管理系列-软RAID的实现
1 什么是RAID RAID全称是独立磁盘冗余阵列(Redundant Array of Independent Disks),基本思想是把多个磁盘组合起来,组合一个磁盘阵列组,使得性能大幅提高. R ...
- linux磁盘管理系列三:LVM的使用
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- linux磁盘管理系列二:软RAID的实现
磁盘管理系列 linux磁盘管理系列一:磁盘配额管理 http://www.cnblogs.com/zhaojiedi1992/p/zhaojiedi_linux_040_quota.html l ...
- 每天进步一点点——Linux磁盘管理LVM与RAID
转载请注明出处:http://blog.csdn.net/cywosp/article/details/38965799 1. 传统磁盘管理问题 当分区大小不够用时无法扩展其大小,仅仅能通过加入硬盘. ...
- RAID5的创建(5块磁盘,三块做raid,两块做备份)
RAID5的创建(5块磁盘,三块做raid,两块做备份) 第一步:参考我的上一篇博客,用同样的方法添加5块硬盘.地址如下: https://www.cnblogs.com/Feng-L/p/11735 ...
- Linux RAID 磁盘管理
Linux RAID 磁盘管理 RAID工作模式介绍:https://www.cnblogs.com/xiangsikai/p/8441440.html 本章主要讲解 Linux下 RAID5 与 R ...
- liunx 磁盘管理命令记录
Linux磁盘管理好坏管理直接关系到整个系统的性能问题. Linux磁盘管理常用三个命令为df.du和fdisk. df:列出文件系统的整体磁盘使用量 du:检查磁盘空间使用量 fdisk:用于磁盘分 ...
- LVM磁盘管理
http://www.cnblogs.com/gaojun/archive/2012/08/22/2650229.html Linux LVM硬盘管理及LVM扩容 LVM磁盘管理 一.LVM简介... ...
随机推荐
- JS 没有块级作用域
在函数(方法)中声明的所有变量,他们在整个函数中都有定义 var scope="abc"; function f() { alert(scope); //显示undefine v ...
- 行为级和RTL级的区别(转)
转自:http://hi.baidu.com/renmeman/item/5bd83496e3fc816bf14215db RTL级,registertransferlevel,指的是用寄存器这一级别 ...
- Could not find qmake configuration file win32-g++
D:\Source>c:\Qt\Qt5.3.2_static\bin\qmake -makefile -o Makefile my.proCould not find qmake configu ...
- Navicat_Preminum
一. 安装 参考http://blog.csdn.net/longyuhome/article/details/79206041. 软件准备• [OYKSOFT.COM]navicat11.0.8_p ...
- c# 编程添加控件
Button b = new Button();//创建一个新的按钮 b.Text = "test"; //添加到panel1中 panel1.Controls.Add(b);
- deflate与gzip
gzip是一种数据格式,默认且目前仅使用deflate算法压缩data部分: deflate是一种压缩算法,是huffman编码的一种加强. deflate与gzip解压的代码几乎相同,可以合成一块代 ...
- aop动态代理学习
学习,顺便做个demo,方便理解. A接口有c方法,类B实现A接口,原本应该是执行B类中的c方法,可现在不这样做: 我声明产生B类的代理类B',由它来冒充B类的“兄弟”并“实现”A接口, 对外界来说B ...
- python3-day3(深浅copy)
1.对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import copy n1 = 123 print(id(n1)) n2 = n1 print(id(n ...
- python高级编程(第12章:优化学习)2
#优化策略 #3个原则 """ 1a:寻找其他原因:确定第三方服务器或资源不是问题所在 2a:度量硬件:确定资源足够用 3a:编写速度测试:创建带有速度要求的场景 &qu ...
- C++: int和string相互转换
假设在一个C++的程序中常常会用到int和string之间的互换.个人建议能够写成一个函数,下次用的时候直接调用就可以. #include <iostream> #include < ...