什么是RAID? 硬RAID 和软RAID的区别是什么?

什么是RAID? 硬RAID 和软RAID的区别是什么?近年来 NAS 越加火爆 但是在使用 NAS 时无法避免的一个东西就是 RAID 那么什么是 RAID 呢 又有那些坑呢 什么是 RAIDRAID 是 RedundantArr 的简写 意为独立硬盘冗余阵列 简称磁盘阵列 其基本思想就是把多个相对便宜的硬盘组合起来 成为一个硬盘阵列组 使性能达到甚至超过一个价格昂贵 容量巨大的硬盘 由于 RAID 把多个硬盘

近年来 NAS越加火爆,但是在使用 NAS时无法避免的一个东西就是 RAID,那么什么是 RAID 呢?又有那些坑呢? 

什么是 RAID

RAID 是Redundant Array of Independent Disks的简写,意为独立硬盘冗余阵列,简称磁盘阵列

其基本思想就是把多个相对便宜的硬盘组合起来,成为一个硬盘阵列组,使性能达到甚至超过一个价格昂贵、容量巨大的硬盘。

由于RAID把多个硬盘组合成为一个逻辑扇区,因此对于电脑来说,只会把它当作一个硬盘或逻辑存储单元。

根据选择的版本不同,RAID比单颗硬盘有以下一个或多个方面的好处:

  • 增强数据集成度
  • 增强容错功能
  • 增加处理量或容量

RAID 的版本

JBOD:严格来说JBOD并不是RAID的版本,但是目前也并没有相应专有的标准

在应用上来说,RAID 0 、RAID 1、RAID 5、RAID 6最常见, RAID2、3、4较少实际应用,因为RAID5已经涵盖了所需的功能,因此RAID2、3、4大多只在研究领域有实现,RAID4有应用在某些商用机器上,像是NetApp公司设计的NAS系统就是使用RAID4的设计概念。

先上一张比较形象的图

饮水机

各版本对比表格

对比表格

RAID 0

RAID 1

RAID 2

RAID 3

采用Bit-interleaving(数据交错存储)技术,它需要通过编码再将数据比特分割后分别存在硬盘中,而将同比特检查后单独存在一个硬盘中,但由于数据内的比特分散在不同的硬盘上,因此就算要读取一小段数据资料都可能需要所有的硬盘进行工作,所以这种规格比较适于读取大量数据时使用。

RAID 3

RAID 4

RAID 5

RAID Level 5是一种储存性能、数据安全和存储成本兼顾的存储解决方案。它使用的是Disk Striping(硬盘分区)技术。RAID 5至少需要三块硬盘,RAID 5不是对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID5的一个磁盘数据发生损坏后,可以利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。RAID 5可以理解为是RAID 0和RAID 1的折衷方案。RAID 5可以为系统提供数据安全保障,但保障程度要比镜像低而磁盘空间利用率要比镜像高。RAID 5具有和RAID 0相近似的数据读取速度,只是因为多了一个奇偶校验信息,写入数据的速度相对单独写入一块硬盘的速度略慢,若使用“回写缓存”可以让性能改善不少。同时由于多个数据对应一个奇偶校验信息,RAID 5的磁盘空间利用率要比RAID 1高,存储成本相对较便宜。

RAID 5

RAID 6

与RAID 5相比,RAID 6增加第二个独立的奇偶校验信息块。两个独立的奇偶系统使用不同的算法,数据的可靠性非常高,任意两块磁盘同时失效时不会影响数据完整性。RAID 6需要分配给奇偶校验信息更大的磁盘空间和额外的校验计算,相对于RAID 5有更大的IO操作量和计算量,其“写性能”强烈取决于具体的实现方案,因此RAID6通常不会通过软件方式来实现,而更可能通过硬件/固件方式实现。

同一数组中最多容许两个磁盘损坏。更换新磁盘后,数据将会重新算出并写入新的磁盘中。依照设计理论,RAID 6必须具备四个以上的磁盘才能生效。

可使用的容量为硬盘总数减去2的差,乘以最小容量,同理,数据保护区域容量则为最小容量乘以2。

硬 RAID 全软 RAID 半软 RAID

根据事先方式不同,RAID 分为软件磁盘阵列(软RAID)硬件磁盘阵列(硬 RAID) 以及 硬件辅助磁盘阵列(半软、半硬)三种类型。

硬件磁盘阵列(Hardware RAID)

简单来说就是全部通过用硬件来实现RAID功能的就是硬RAID,比如:各种RAID卡,还有主板集成能够做的RAID都是硬RAID。
所以硬 RAID 就是用专门的RAID控制器(RAID 卡)将硬盘和电脑连接起来,RAID控制器负责将所有的RAID成员磁盘配置成一个虚拟的RAID磁盘卷。对于操作系统而言,他只能识别到由RAID控制器配置后的虚拟磁盘,而无法识别到组成RAID的各个成员盘

硬RAID全面具备了自己的RAID控制/处理与I/O处理芯片,甚至还有阵列缓冲(Array Buffer),对CPU的占用率以及整体性能中最有优势。

软件磁盘阵列(Software RAID)

硬件辅助磁盘阵列(Hardware-Assisted RAID)

RAID 卡

RAID卡有多种,除主板集成能够做的RAID的硬RAID外,还有各种专门RAID卡。一般分为硬RAID卡和软RAID卡两种

  • 通过用硬件来实现RAID功能的就是硬RAID,独立的RAID卡,主板集成的RAID芯片都是硬RAID。
  • 通过软件并使用CPU的RAID卡是指使用CPU来完成RAID的常用计算,软件RAID占用CPU资源较高

绝大部分服务器设备是硬件RAID

RAID卡上自带处理器,不需要服务器的CPU运算。优点是读写性能最快,不占用服务器资源,可用于任何操作系统,也能在系统断电后,通过备份电池模块(BBU, Backup Battery Unit)以及非易失性内存 (NVRAM)将硬盘读写日志档(Journal)包含的剩余读写作业先纪录在内存中,等待电力供应撤消后,再由NVRAM取回日志档数据,接着再完成读写作业,将剩余读写作业安全完成以确保读写完整性。备份电池模块通常会配合数组卡的Write-Back缓存模式,借由此内存缓存读写作业以得到更高的读写性能;但是没有备份电池模块的硬件磁盘阵列卡,切勿使用Write-Back缓存模式以免遭遇断电情形导致读写数据流失。此外,因为硬件磁盘阵列卡搭载CPU处理器,所以可以与系统分离出来,对硬盘进行各种作业,还原作业的速度也比软件磁盘阵列快。缺点是其售价很高,通常只用于RAID 5和RAID 6。

主板集成RAID与外插RAID卡RAID的区别:

性能

主板集成的RAID,它的性能以及它的速度是通过主板的CPU与内存来实现的,它会占有主板一定的带宽,会影响整机的性能,而外插RAID卡,它本身由自己的CPU和内存,所以它的数据处理大部分都会由自己处理,不会影响主板上的CPU与内存速度,总体看来,外插的RAID卡的RAID要比主板集成的RAID快得多。

安全性

主板集成的RAID它的安全性不能够得到保证,比如:我们用P8SCT主板做一个SATA RAID,不论你做RAID几,它是通过更改主板的BIOS选项做成的,所以一旦主板损坏、主板的CMOS电池掉电、无意更改了主板BIOS的设置都会带来RAID的丢失,通过主板做成的RAID,一旦丢失,将会不能恢复,后果是非常严重的,而外插的RAID卡做成的RAID就不会因为主板损坏、主板的CMOS电池掉电等现象对数据造成影响,所以外插的RAID卡,它的安全性远远大于主板集成的。

优缺点

软RAID依存于OS,硬RAID独立于OS。所以硬RAID的性能以及数据安全性肯定更好

优点:

硬 RAID:

  • 对CPU 的占用率以及整体性能是这三种类型中最优势的
  • 有硬盘丢失时可以实现重建,如果RAID卡损坏时也可以更换RAID卡

软 RAID:

  • 成本低,只需要主板支持即可,不需要任何磁盘阵列卡
  • 实现简单

半软 RAID:

  • 性能以及稳定性较软 RAID 有不少提升
  • 较易迁移到其他电脑

缺点:

硬 RAID:

  • 设备成本是三种类型中最高的
  • 需要有一定技术知识

软 RAID:

  • 为耗损较多CPU资源运算RAID,导致发热等问题,也就不够稳定
  • 依赖操作系统,而操作系统。。。。
  • 若主板损坏,可能难以购买同款主板重建RAID

半软 RAID:

  • 比上不足比下有余

附:

维基百科: https://zh.wikipedia.org/wiki/RAID#JBOD
百度百科: http://baike.baidu.com/view/63423.htm?fromtitle=RAID&fromid=33858&type=syn#viewPageContent http://baike.baidu.com/link?url=AAbF9DsK-eVY0nGk4BI2h2dDlYUACjlcSqIHB6Ec1Cz05uouNV5CthS9reWnjRaGmMPuFJxze90cjbvUsRhOV_ http://baike.baidu.com/view/95439.htm
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/228383.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月16日 下午7:09
下一篇 2026年3月16日 下午7:09


相关推荐

  • 关于easy的短语(facemock框架)

    作为一个月薪3000的屌丝民工,今天也开始写自己的微博了,打发一下dota之外的时光。写了一年的flex,虽然很是熟练,但是有啥用呢。新版flash的普及上不去,旧版的渲染太慢。还是改行好了。最近开始研究有啥好的东西,之前看了一下unity3d,但是发现自己得先去学3dmax,可是看了3dmax发现高手实在太多了。要学好也不知道要多久,况且自己的美术功底实在太差。专研一下后台吧,发现自己编码解码不

    2022年4月12日
    48
  • 2022 CCF中国开源大会会议通知(第四轮)[通俗易懂]

    2022 CCF中国开源大会会议通知(第四轮)[通俗易懂]2022CCF中国开源大会(CCFChinaOSC)拟于2022年8月20日至21日在陕西省西安高新国际会议中心召开。大会由中国计算机学会(CCF)与开放原子开源基金会主办,CCF开源发展委员会、西安电子科技大学承办,西安电子科技大学计算机科学与技术学院(国家示范性软件学院)具体落实,西安市智能软件工程重点实验室负责实施,得到西安高新区管委会的大力支持,西安软件园发展中心具体执行。大会由华为技术有限公司作为白金赞助商,阿里巴巴集团、汇丰科技、东软集团股份有限公司、江苏引跑网络科技有限公司作为赞助商。本届

    2025年11月21日
    5
  • 即梦ai网页版入口(即梦ai在线使用操作教程)

    即梦ai网页版入口(即梦ai在线使用操作教程)

    2026年3月12日
    2
  • 皮尔森相关系数(Pearson correlation coefficient)「建议收藏」

    皮尔森相关系数(Pearson correlation coefficient)「建议收藏」概述定义物理意义皮尔森距离机器学习中的应用代码实现概述皮尔森相关系数也称皮尔森积矩相关系数(Pearsonproduct-momentcorrelationcoefficient),是一种线性相关系数,是最常用的一种相关系数。记为r,用来反映两个变量X和Y的线性相关程度,r值介于-1到1之间,绝对值越大表明相关性越强。定义总体相关系数ρ定义为两…

    2022年4月20日
    600
  • 格雷码的实现[通俗易懂]

    格雷码的实现[通俗易懂]问题:产生n位元的所有格雷码。格雷码(GrayCode)是一个数列集合,每个数使用二进位来表示,假设使用n位元来表示每个数字,任两个数之间只有一个位元值不同。例如以下为3位元的格雷码: 000001011010110111101100。如果要产生n位元的格雷码,那么格雷码的个数为2^n.假设原始的值从0开始,格雷码产生的规律是:第一步,改变最右边的

    2025年6月3日
    4
  • c++ 常量表达式_c语言所有函数

    c++ 常量表达式_c语言所有函数constexpr修饰函数。普通函数/类成员函数。1.函数必须要有返回值,并且return返回的表达式必须是常量表达式。错误代码如下:#include<iostream>usingnamespacestd;//error不是常量表达式函数constexprvoidfunc1(){ inta=200; cout<<a<<endl;}//error不是常量表达式函数因为a是变量,不是常量constexprint

    2026年4月16日
    4

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号