RAID磁盘阵列0、1、5、10
raid0:(又称为Stripe或Striping--分条)
(一句话:raid0 用多个磁盘串联起来成一个大磁盘,容量为几个的总和。优点:容量大,速度快。缺点:数据不安全)
即Data Stripping数据分条技术。RAID 0可以把多块硬盘连成一个容量更大的硬盘群,可以提高磁 盘的性能和吞吐量。RAID 0没有冗余或错误修复能力,成本低,要求至少两个磁盘,一般只是在那些对数 据安全性要求不高的情况下才被使用。
从理论上讲,三块硬盘的并行操作使同一时间内磁盘读写速度提升了3倍。 但由于总线带宽等多种因素的影响,实际的提升速率肯定会低于理论值,但是,大量数据并行传输与串行传输比较,提速效果显著显然毋庸置疑。
RAID 0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。
RAID 0具有的特点,使其特别适用于对性能要求较高,而对数据安全不太在乎的领域,如图形工作站等。对于个人用户,RAID 0也是提高硬盘存储性能的绝佳选择。
raid1:(又称为Mirror或Mirroring--镜像)
(一句话:raid1,将一半存放数据,另一半存放备份。优点:数据保存安全;缺点:浪费太多磁盘,只有50%的利用率)
RAID 1称为磁盘镜像:把一个磁盘的数据镜像到另一个磁盘上,在不影响性能情况下最大限度的保证系统的可靠性和可修复性上,具有很高的数据冗余能力,但磁盘利用 率为50%,故成本最高,多用在保存关键性的重要数据的场合。RAID 1的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。
RAID 1有以下特点:
(1)、RAID 1的每一个磁盘都具有一个对应的镜像盘,任何时候数据都同步镜像,系统可以从一组 镜像盘中的任何一个磁盘读取数据。
(2)、磁盘所能使用的空间只有磁盘容量总和的一半,系统成本高。
(3)、只要系统中任何一对镜像盘中至少有一块磁盘可以使用,甚至可以在一半数量的硬盘出现问题时系统都可以正常运行。
(4)、出现硬盘故障的RAID系统不再可靠,应当及时的更换损坏的硬盘,否则剩余的镜像盘也出现问题,那么整个系统就会崩溃。
(5)、更换新盘后原有数据会需要很长时间同步镜像,外界对数据的访问不会受到影响,只是这时整个系统的性能有所下降。
(6)、RAID 1磁盘控制器的负载相当大,用多个磁盘控制器可以提高数据的安全性和可用性。
当读取数据时,系统先从RAID1的源盘读取数据,如果读取数据成功,则系统不去管备份盘上的数据;如果读取源盘数据失败,则系统自动转而读取备份盘 上的数据,不会造成用户工作任务的中断。
raid5: (可以理解为是RAID 0和RAID 1的折衷方案,使用了“奇偶校验信息”来作为数据恢复的方式)
(一句话:raid5是综合了raid0和raid1,磁盘利用率、传输率较快,数据有备份,单独分一个磁盘来备份奇偶校验信息,用来恢复数据)
图中,Ap为A1,A2和A3的奇偶校验信息,其它以此类推。由图中可以看出,RAID 5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘 上。当RAID5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。
raid10:(称为镜象阵列条带)
(一句话:完全等于raid0和raid1的功能累加 ranid10 = raid1 + raid0,缺点是磁盘利用率小于或等于50%)
象RAID0一样,数据跨磁盘抽取;象RAID1一样,每个磁盘都有一个镜象磁盘, 所以RAID 10的另一种会说法是 RAID 0+1。RAID10提供100%的数据冗余,支持更大的卷尺寸,但价格也相对较高。对大多数只要求具有冗余度而不必考虑价格的应用来说,RAID10提 供最好的性能。使用RAID10,可以获得更好的可靠性,因为即使两个物理驱动器发生故障(每个阵列中一个),数据仍然可以得到保护。RAID10需要4 + 2*N 个磁盘驱动器(N >=0), 而且只能使用其中一半(或更小, 如果磁盘大小不一)的磁盘用量, 例如 4 个 250G 的硬盘使用RAID10 阵列, 实际容量是 500G。
总结:
类型 | 读写性能 | 安全性 | 磁盘利用率 | 成本 | 应用方面 |
RAID0 | 最好(因并行性而提高) | 最差(完全无安全保障) | 最高(100%) | 最低 | 个人用户 |
RAID1 | 读和单个磁盘无分别,写则要写两边 | 最高(提供数据的百分之百备份) | 差(50%) | 最高 | 适用于存放重要数据,如服务器和数据库存储等领域。 |
RAID5 | 读:RAID 5=RAID 0(相近似的数据读取速度)
写:RAID 5<对单个磁盘进行写入操作(多了一个奇偶校验信息写入) |
RAID 5<RAID 1 | RAID 5>RAID 1 | RAID 5<RAID 1 | 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。 |
RAID10 | 读:RAID10=RAID0
写:RAID10=RAID1 |
RAID10=RAID1 | RAID10=RAID1(50%) | RAID10=RAID1 | 集合了RAID0,RAID1的优点,但是空间上由于使用镜像,而不是类似RAID5的“奇偶校验信息”,磁盘利用率一样是50% |
dd
RAID磁盘阵列0、1、5、10的更多相关文章
- Raid(0/1/5/10)
一.Raid需要的硬盘数量 1.raid 0: 最少1块硬盘(但是1块盘没有意义,至少2块才有实际意义) 2.raid 1: 最少2块硬盘 3.raid 5: 最少3块硬盘 4 ...
- raid 0 1 5 10 总结的知识点
raid 0 1 5 10 raid 发的别名条带 raid 0 读取性能最高需要磁盘2*N个(N>0)代表所有raid级别中的最高存储性能,其实原理就是把连续的数据分散到多个磁盘上存取,这样, ...
- RAID磁盘阵列学习笔记
RAID是“Redundant Array of Independent Disk”的缩写,中文意思是独立冗余磁盘阵列.简单地解释,就是将N台硬盘通过RAID Controller(分Hardware ...
- RAID磁盘阵列原理
磁盘阵列(Redundant Arrays of independent Disks,RAID),有“价格便宜具有冗余能力的磁盘阵列”之意.原理是利用数组方式来作磁盘组,配合数据分散排列的设计,提升数 ...
- RAID磁盘阵列
什么是RAID 独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),简称磁盘阵列.其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组, ...
- linux lvm管理扩展 RAID磁盘阵列管理
LVM逻辑卷将多个物理分区/磁盘从逻辑上组合成一个更大的整体,从其中划分出不同的逻辑分区,逻辑分区的大小可以根据需要扩大,缩减!!!!/boot用来存放引导文件,不要基于LVM创建 PV(物理卷)物理 ...
- RAID磁盘阵列及CentOS7系统启动流程(week2_day3)--技术流ken
RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便宜的磁盘,以硬件( ...
- RAID磁盘阵列及CentOS7系统启动流程
磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意,,数据读取无影响.将数据切割成许多区段,分别存放在各个硬盘 ...
- 末学者笔记--Linux中RAID磁盘阵列及centos7启动过程
<一>RAID概念 磁盘阵列(Redundant Arrays of Independent Disks,RAID),有“独立磁盘构成的具有冗余能力的阵列”之意. 磁盘阵列是由很多价格较便 ...
随机推荐
- 双有序队列算法——处理哈夫曼K叉树的高效算法
算法介绍: 哈夫曼树的思路及实现众所周知,大部分是用堆来维护和实现,这种思路比较清晰,在K比较小的时候处理较快(具体例子接下来再说),而且编程复杂度不是很高,利于应用.但是,其所用的数据结构是树,是在 ...
- C#中常用接口介绍
1. IComparable接口 IComparable接口定义通用的比较方法.由类型使用的IComparable接口提供了一种比较多个对象的标准方式.如果一个类要实现与其它对象的比较, 则必须实现I ...
- Python爬虫获取迅雷会员帐号
代码如下: import re import urllib.request import urllib import time from collections import deque head = ...
- STL——静态常量整数成员在class内部直接初始化
如果class内含const static integral data member,那么根据C++标志规格,我们可以在class之内直接给予初值.所谓integral泛指所有的整数型别(包括浮点数) ...
- Linux cpuinfo 详解
在Linux系统中,如何详细了解CPU的信息呢? 当然是通过cat /proc/cpuinfo来检查了,但是比如几个物理CPU/几核/几线程,这些问题怎么确定呢? 经过查看,我的开发机器是1个物理C ...
- Java POI导入Excel文件
今天在公司需要做个导入Excel文件的功能,所以研究了一下,参考网上的一些资料总算是做出来了,在此记录一下防止以后忘记怎么弄. 本人用的是poi3.8,所以需要的JAR包如下: poi-3.8.jar ...
- Java NIO中核心组成和IO区别
1.Java NIO核心组件 Java NIO中有很多类和组件,包括Channel,Buffer 和 Selector 构成了核心的API.其它组件如Pipe和FileLock是与三个核心组件共同使用 ...
- 超级钢琴 2010年NOI
/* 自己yy的奇葩做法居然A了23333 不过空间好像很大 时间好像略慢..... 毕竟不是正解 前缀维护sum值 枚举区间起点 然后终点的坐标可以确定在一个范围 可持久化线段树查询区间第1大 然后 ...
- ExecuteScalar 要求已打开且可用的 Connection。连接的当前状态为已关闭。
本人遇到的一个小问题,希望能帮助大家 出现这个问题就是在此操作之前已经被的程序关闭了连接,比如在执行这块代码之前不幸执行了存储过程..,就会导致这个问题发生
- MVC3中 ViewBag、ViewData和TempData的使用和区别(不是自己写的)
(网上抄的,并未消化)在MVC3开始,视图数据可以通过ViewBag属性访问,在MVC2中则是使用ViewData.MVC3中保留了ViewData的使用.ViewBag 是动态类型(dynamic) ...