独立硬盘冗余阵列(RAID, Redundant Array of Independent Disks),旧称廉价磁盘冗余阵列(Redundant Array of Inexpensive Disks),简称磁盘阵列。其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:增强数据集成度,增强容错功能,增加处理量或容量。另外,磁盘阵列对于电脑来说,看起来就像一个单独的硬盘或逻辑存储单元。分为RAID-0,RAID-1,RAID-1E,RAID-5,RAID-6,RAID-7,RAID-10,RAID-50,RAID-60。

以上摘自wiki中文

RAID0


所有硬盘并联,读写并行处理,在所有RAID中具有最快的读写速度。任何一块一盘离线,所有数据都无法恢复。

RAID1


所有硬盘互为镜像,理论上读取速度与硬盘数线性相关,写入速度与单块硬盘速度相当。只要有一块硬盘在线就可以正常工作。在所有RAID中安全性最高。硬盘越多,存储空间越浪费,在所有RAID中空间利用率最低。

RAID2/RAID3/RAID4


较少实际应用,主要用于研究领域。原理与RAID5类似,性能不如RAID5.

RAID5


RAID5是一种储存性能、数据安全和存储成本兼顾的存储解决方案。每块硬盘有一个奇偶校验区,最少需要三块硬盘。对于阵列中的硬盘A、B、C,每个硬盘分三个区:A1、A2、A3、B1、B2、B3、C1、C2、C3,其中A3、B2、C1为奇偶校验区,A3=B3⊕C3,B2=A2⊕C2,C1=A1⊕B1,根据异或操作的特性,若a⊕b=c则a=b⊕c且b=a⊕c,当硬盘B故障时,只需计算B3=A3⊕C3、B1=A1⊕C1,B2=A2⊕C2即可完成数据恢复。可以理解为,当一块硬盘故障时,需要解n个一元一次异或方程进行数据恢复。

RAID6


与RAID5类似,但每块硬盘有两个独立的校验区,最少需要四块硬盘。两个校验区PQ,P与RAID5类似,进行异或运算;Q需要应用场理论(Galois Filed伽罗华域,尝试去查询这方面的资料,但是要求数学专业知识,本人数学知识有限,文档读起来非常吃力,没有理解)。与RAID5类似,可以理解为当有两块硬盘故障时,需要解n个二元一次异或方程组进行数据恢复。

RAID10


先做镜像再做分区,只要每个分区中至少有一块硬盘在线就可以正常工作,可靠性高。

RAID01


先做分区再做镜像,相当于多个RAID0阵列做镜像,只要一个RAID0中有一块硬盘故障,整个RAID0就会失效,相对于RAID10可靠性低。

RAID50


先做RAID5再做RAID0,每个RAID5分区都允许至少一块硬盘故障,当有一个RAID5分区中有至少两块硬盘故障时,整个RAID50将会失效。

RAID60


先做RAID6再做RAID0,每个RAID6分区都允许至少两块硬盘故障,当有一个RAID6分区中有至少三块硬盘故障时,整个RAID60将会失效。

关于RAID选择建议:

  • 如果存储空间足够,选择RAID1+0
  • 单独的数据库服务器其磁盘阵列最好选用RAID1+0
  • 如选择RAID1+0空间不够,选择RAID 5
  • 如果磁盘阵列包含的磁盘超过了8块,最好选择RAID 6

最后附上wiki上关于RAID的词条链接:

英文wiki

中文wiki

关于RAID小结的更多相关文章

  1. [转]RAID基础,RAID10与RAID01比较,RAID10与RAID5比较

    原文:http://blog.itpub.net/787018/viewspace-666280/ 文档内容3部分:1.基本的RAID级别介绍2.RAID10和RAID01的比较3.RAID10和RA ...

  2. 戴尔PowerEdge RAID控制卡使用示例(PERC H710P为例)

    Dell PERC使用示例列表(H710p) 特别说明,本文相关RAID的操作,仅供网友在测试环境里学习和理解戴尔PowerEdge服务器RAID控制卡的功能和使用方法.切勿直接在生产服务器上做相关实 ...

  3. Linux运维基础提高之RAID卡和磁盘分区

    磁盘大小计算: 柱面的数量*每个柱面的大小(容量) [root@luffy001 ~]# fdisk -l Disk /dev/sda: 10.7 GB, 10737418240 bytes 255 ...

  4. MYSQL数据表损坏的原因分析和修复方法小结

    MYSQL数据表损坏的原因分析和修复方法小结 1.表损坏的原因分析 以下原因是导致mysql 表毁坏的常见原因: 1. 服务器突然断电导致数据文件损坏. 2. 强制关机,没有先关闭mysql 服务. ...

  5. 从零开始编写自己的C#框架(26)——小结

    一直想写个总结,不过实在太忙了,所以一直拖啊拖啊,拖到现在,不过也好,有了这段时间的沉淀,发现自己又有了小小的进步.哈哈...... 原想框架开发的相关开发步骤.文档.代码.功能.部署等都简单的讲过了 ...

  6. Python自然语言处理工具小结

    Python自然语言处理工具小结 作者:白宁超 2016年11月21日21:45:26 目录 [Python NLP]干货!详述Python NLTK下如何使用stanford NLP工具包(1) [ ...

  7. java单向加密算法小结(2)--MD5哈希算法

    上一篇文章整理了Base64算法的相关知识,严格来说,Base64只能算是一种编码方式而非加密算法,这一篇要说的MD5,其实也不算是加密算法,而是一种哈希算法,即将目标文本转化为固定长度,不可逆的字符 ...

  8. iOS--->微信支付小结

    iOS--->微信支付小结 说起支付,除了支付宝支付之外,微信支付也是我们三方支付中最重要的方式之一,承接上面总结的支付宝,接下来把微信支付也总结了一下 ***那么首先还是由公司去创建并申请使用 ...

  9. iOS 之UITextFiled/UITextView小结

    一:编辑被键盘遮挡的问题 参考自:http://blog.csdn.net/windkisshao/article/details/21398521 1.自定方法 ,用于移动视图 -(void)mov ...

随机推荐

  1. 【Linux常见命令】ifconfig命令:配置与查看网络信息

    ifconfig(interfaces config).通常需要以root身份登录或使用sudo来使用ifconfig工具 ifconfig 命令用来查看和配置网络设备.当网络环境发生改变时可通过此命 ...

  2. Linux中的常用符号

    >, 1>     输出重定向符stdout,代码为1,重定向内容到文件,清除已有的内容,然后加入新内容,如果文件不存在还会创建文件 >>, 1>>   追加输出重 ...

  3. Facebook发布神经蛋分离法,可从嘈杂环境中提取音视频

    分离混合分布是机器学习和信号处理的长期挑战,而Facebook近日提出的新方法似乎可以有效解决这一难题. 人类天生善于分离个别声音和视觉效果,例如在拥挤的鸡尾酒会上听到别人的声音,或者在动物穿过灌木丛 ...

  4. nginx响应超时upstream timed out 问题处理

    环境介绍 服务器:centos7.2 应用:tomcat集群 服务:nginx 代理 问题描述: 这段时间,听项目组项目经理和业务需求人员跟我反馈,线上业务人员在操作业务交易时,有时会出现nginx错 ...

  5. 全面解析Java语言 Java技能优化集锦

    通用篇 "通用篇"讨论的问题适合于大多数Java应用. 不用new关键词创建类的实例 用new关键词创建类的实例时,构造函数链中的所有构造函数都会被自动调用.但如果一个对象实现了C ...

  6. 可运行的Java RMI示例和踩坑总结

    简述 资料参考: https://docs.oracle.com/javase/tutorial/rmi/overview.html https://blog.csdn.net/bigtree_372 ...

  7. Muduo网络库实战(一):安装和配置

    1. 参考资料 <Muduo_网络库使用手册> 2. 实战记录 1) muduo依赖项安装 centos安装cmake命令:# yum install cmake centos安装libb ...

  8. ACM-ICPC 2019 山东省省赛总结

    五题手快拿银,不然拿铜,甚至不拿,从结果上来看拿了铜牌对第一年的我们来说算好的,也不算太好. 从拿奖后的第一天,我想写这篇博客,但是我忍了下来,那时候被喜悦冲昏了头脑,当 冷静下来,我开始打算写这篇博 ...

  9. C++ 重载运算符 继承 多态 (超详细)

    (一)重载运算符: (1)声明与定义格式 一般是类内声明,类外定义,虽然可以在类内定义,但 写前面堆一堆不好看!!! 类内声明: class Demo { 返回值类型 operator 运算符(形参表 ...

  10. FPGA-中值滤波(1)代码

    module shift_ram_3_8bit #( parameter Ram_Length = 'd640 ) ( clken, clock, shiftin, shiftout, taps0x, ...