02
2024
08
12:30:28

文件系统学习 RAID原理学习 RAID0 RAID1 RAID2 RAID3 RAID4 RAID5 RAID6 RAID10

RAID

RAID,全称为redundant array of independent disks,是目前商用服务器常见的磁盘管理技术

文章目录

  • RAID


    • RAID0


    • RAID1


    • RAID2


    • RAID3


    • RAID4


    • RAID5


    • RAID6


    • RAID10


    • N块盘的RAID0的特性

    • N块盘的RAID1的特性

    • N块盘的RAID2的特性

    • N块盘的RAID3的特性

    • N块盘的RAID4的特性

    • 对比RAID3和RAID4

    • N块盘的RAID5的特性

    • 对比RAID4和RAID5

    • N块盘的RAID6的特性

    • 对比RAID5和RAID6

    • N块盘的RAID10的特性

    • 数据冗余

    • 性能提升

    • RAID的作用


    • 各级RAID的基本原理


    • 各级RAID的对比

    • 软RAID和硬RAID


    RAID的作用

    数据冗余

    把数据的校验信息存放在冗余的磁盘中,在某些磁盘数据损坏时,能从其他未损坏的磁盘中,重新构建数据。

    性能提升

    RAID能把多块独立的磁盘组成磁盘阵列,通过把数据切成分片的方式,使得读/写数据能走多块磁盘,从而提升性能

    各级RAID的基本原理

    根据RAID的冗余信息程度,切分数据的方式等不同,可以把RAID分成不同的级别,一共有7个级别
    RAID0 RAID1 RAID2 RAID3 RAID4 RAID5 RAID6

    RAID0

    RAID0设计的目标是为了提升读写性能,但并不带数据冗余信息
    没有考虑数据的可靠性,如果磁盘坏了那么整个RAID就不可用

    在这里插入图片描述
    RAID0会把数据切成块,分别存储在N个磁盘上。当读数据时,如果要读的数据块比较大,分布在多次磁盘上,那么能同时从多块盘读数据;当写数据时,如果要写的数据块比较大,分布式在多块磁盘上,那么同时能从多块盘写数据

    N块盘的RAID0的特性

    读性能最好情况下是单块盘的N倍
    写性能最好情况下是单块盘的N倍
    空间利用率为100%
    不具有冗余信息,任何一块磁盘损坏,整个RAID不可用

    RAID1

    RAID1的设计目标是为每份数据都提供一份或多份冗余数据

    在这里插入图片描述

    RAID1中一个磁盘都有一个或多个冗余的镜像盘,所有磁盘的数据是一模一样的
    RAID1读数据时,可以利用所有数据盘的带宽;
    RAID1写数据时,要同时写入数据盘和镜像盘
    因此,需要等待最慢的磁盘写完成,写操作才完成

    因此,写性能跟最慢的磁盘相当

    对比Gluster的双副本写入,因为要写入两个服务器,所以写入的带宽减半,写入性能瓶颈更多的是在网络带宽上

    N块盘的RAID1的特性

    读性能最好情况下是原来的N倍
    写性能跟最慢的磁盘相当
    空间利用率1/2
    N块盘,坏掉N-1块,RAID还能正常使用(镜像盘有一块可用)

    RAID2

    RAID2的设计目标是在RAID0级别的基础上,加了海明纠错码
    在这里插入图片描述

    前面四个盘是数据盘,后面三个盘是纠错码
    RAID2读数据时,能同时使用多个数据盘的带宽;
    RAID2写数据时,除了写数据盘,还需要写校验盘,写性能会有下降
    因为存在数据纠错,所以在坏盘的情况下可以实现数据拯救

    N块盘的RAID2的特性

    读性能不到原来的N倍,因为还有一部分是校验盘
    写性能会有下降,因为每次都要写校验盘,受限于校验盘的数量
    空间利用率小于100%,因为海明纠错码需要的冗余盘一般比数据盘的数量少 一共7块盘,4块数据盘,3块校验盘,如果数据盘满了,那么校验盘不会满,空间利用率只会利用7分之4
    根据海明纠错码位数的不同,能容忍的坏盘数不同,具体信息可以参考海明码

    RAID3

    RAID3是把数据按照字节分别存在不同的磁盘中,并且最后一个磁盘提供纠错冗余
    在这里插入图片描述

    由于按照字节切分数据,读数据时,一定会同时从多个盘读数据,可以利用所有数据盘的带宽;
    写数据时,也会利用所有磁盘的带宽,但所有的写校验数据都会在一个盘,因此,写性能主要受限于校验盘

    N块盘的RAID3的特性

    读性能是N-1倍,其中一块盘是校验盘
    写性能受限于校验盘的写性能
    空间利用率为(N-1)/N
    坏掉一块盘,RAID还能正常工作

    RAID4

    RAID4是把数据按照分块分别存在不同的磁盘中,并且最后一个磁盘提供纠错冗余
    在这里插入图片描述

    读数据时,当数据分布在多块盘时,能够利用多块数据盘的带宽;
    写数据时,如果数据分布在多快盘时,能利用所有磁盘带宽,但写校验数据只能在一块盘上,因此,写性能主要受限于校验盘

    N块盘的RAID4的特性

    读性能是N-1倍,其中一块盘是校验盘
    写性能受限于校验盘的写性能
    空间利用率为(N-1)/N
    坏掉一块盘,RAID还能正常工作

    对比RAID3和RAID4

    在存储结构化数据,写入RAID3会更快写
    在存储普通文件数据时候,RAID4更快

    RAID5

    RAID5是把数据块按照分块分别存在不同的磁盘中,并且冗余信息也会分块分布在多块磁盘中
    在这里插入图片描述

    读数据时,当数据分布在多块盘时,能够利用多块数据盘的带宽;
    写数据时,如果数据分布在多块盘时,能利用所有数据盘带宽,同时写校验数据也分散在多块盘上 ,但因为要额外写入校验数据,因此,写数据的性能略微有所下降

    N块盘的RAID5的特性

    读性能是N倍
    写性能略微弱于RAID0
    空间利用率为(N-1)/N
    坏掉一块盘,RAID还能正常工作

    对比RAID4和RAID5

    RAID5可以用N块盘,RAID4可以用N-1块,RAID5利用率更高

    RAID6

    RAID6是把数据块按照分块分别存在不同的磁盘中,并且冗余信息为两份奇偶校验码,分布在多块磁盘中。
    在这里插入图片描述

    读数据时,当数据分布在多块盘时,能够利用多块数据盘的带宽;
    写数据时,如果数据分布在多块盘时,能利用多块数据盘带宽,同时写校验数据也分散在多块盘中,但因为要额外写入两份校验数据,因此,写数据的性能要略微下降。

    N块盘的RAID6的特性

    读性能是N倍
    写性能略微弱于RAID0
    空间利用率为(N-2)/N
    坏掉两块盘,RAID还能正常工作

    对比RAID5和RAID6

    存在两份奇偶校验,比RAID5安全性更高

    RAID10

    在这里插入图片描述

    为了保证数据安全的同时,又能获取较好的读写性能
    可以将磁盘组成RAID1后,再组成RAID0,这样写入时候可以拥有RAID0的速度,同时又拥有RAID1的数据安全性

    N块盘的RAID10的特性

    读性能最好情况下是原来的N倍
    写性能跟N/2倍
    空间利用率1/2
    N块盘,坏掉N-1块,RAID还能正常使用(镜像盘有一块可用)

    各级RAID的对比

    在这里插入图片描述
    RAID0容忍的坏盘数为0,风险太大,一般不常用;
    RAID1的信息冗余量很多,适合于对信息安全要求很高并且预算充足的场景;
    RAID2的控制器比较复杂,一般不常用;
    RAID3和RAID4由于其写入性能差,也不常用;
    RAID5由于读写性能、能容忍的坏盘数都比较均衡,因此,一般工业界经常使用的是RAID5;
    RAID6对于坏盘数容忍度较高,适合于对信息安全比较高的场景

    软RAID和硬RAID

    软RAID是使用CPU计算的方式,硬RAID则是需要有单独完成数据校验计算的处理器
    对盘没有1对1的映射方式,在出错时,不知道哪一块盘坏了(数据救不活),但是成本比硬RAID低




    推荐本站淘宝优惠价购买喜欢的宝贝:

    image.png

    本文链接:https://hqyman.cn/post/7352.html 非本站原创文章欢迎转载,原创文章需保留本站地址!

    分享到:
    打赏





    休息一下~~


    « 上一篇 下一篇 »

    发表评论:

    ◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

    请先 登录 再评论,若不是会员请先 注册

    您的IP地址是: