暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Raid介绍

蜜蜂点滴 2020-03-03
1193

一、

1、什么是Raid

    Raid是廉价冗余磁盘阵列(Redundant Array of Inexpensive Disk)的简称,有时也简称磁盘阵列(Disk Array)。

    Raid是一种把一块及多块独立的物理磁盘按不同的技术方式组合起来形成一个磁盘组,逻辑上(做完Raid,装系统后)看起来就是一块大的磁盘,可以提供比单个物理磁盘更大的存储容量或更高的存储性能,同时又能提供不同级别数据冗余备份的一种技术。

2、Raid级别介绍

    把多个物理磁盘通过不同的技术方式组成磁盘阵列,这个不同的技术方式就被称为Raid级别。

    Raid级别一般有:Raid0,Raid1,Raid2,Raid3,Raid4,Raid5,Raid6,Raid7,Raid1+0(也称为Raid10),Raid53等。

    生产环境常用的Raid级别:Raid0,Raid1,Raid5,Raid10.

    我们先把这些Raid级别的优缺点做个比较:

     什么是冗余?

    冗余,指重复配置系统的一些部件,当系统发生故障时,冗余配置的部件介入并承担故障部件的工作,由此减少系统的故障时间Redundant,自动备援,即当某一设备发生损坏时,它可以自动作为后备式该设备。

二、常见Raid技术分为两种

1、软Raid技术

    在Linux下在安装过程中或者安装系统后通过自带的软件就能实现软Raid功能,使用软Raid可省去昂贵的硬件Raid控制器和附件就能极大地增强磁盘的IO性能和可靠性。由于是用软件去实现的Raid功能,所有它配置灵活,管理方便。同时使用软件Raid,还可以实现将几个物理磁盘合并成一个更大的虚拟设备,从而达到性能改进和数据冗余的目的。

2、硬Raid技术

    基于硬件的Raid解决方案比基于软件Raid技术在使用性能和服务性上会更胜一筹,具体表现在检测和修复多位错误的能力,错误磁盘自动检测和阵列重建等方面。从安全性上考虑,基于硬件的Raid解决方案也是更安全的,因此,在实际的生产场景工作中,基于硬件的Raid解决方案应该是我们的首选,互联网公司常用的生产DELL服务器,默认的就会支持Raid0、1,如果Raid5,10就要买Raid卡。

三、Raid和LVM的区别

1、什么是LVM

    LVM全称(Logic Volume Management)逻辑卷管理,它的最大用途是可以灵活的管理磁盘的容量,让磁盘分区可以随意放大或缩小,便于更好的应用磁盘的剩余空间,如果过于强调性能与备份,那么还是应该使用Raid功能,而不是LVM。

    LVM是在硬盘的分区之上,创建一个逻辑层,以方便系统管理整个硬盘分区系统。LVM最先由IBM开发,在AIX系统上实现,OS/2操作系统与HP-UX也支持这个功能。1998年Heinz Mauelshagen根据HP-UX上的LVM管理器,写作出第一个Linux版本。

2、Raid与LVM的区别

    LVM:灵活的管理磁盘,有一定的冗余和性能功能,但是很弱。

    Raid:更侧重性能和数据安全。

3、我们为什么需要Raid

    磁盘阵列可以把多个磁盘驱动通过不同的连接方式连接在一起协同工作,大大提高了读取速度,同时把磁盘系统的可靠性提高到接近无措的境界,使其可靠性极高。

    用Raid最直接的好处是:

    1)提升数据安全性。

    2)提升数据读写性能。

    3)提供更大的单一逻辑磁盘数据容量存储。

三、常用Raid级别细节说明

1、Raid0

    Raid0又称为Stripe(条带化)或Striping(条带模式),它在所有Raid级别中具有最高的存储性能。

    Raid0提高存储性能的原理是把连续的数据分散到多个磁盘上存取。这样,系统有数据读写请求就可以在多个磁盘并行的执行,每个磁盘读写属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的宽带,显著提高磁盘整体存取性能。

    要制作Raid0要求至少是1块物理磁盘,一般来做Raid的不同磁盘大小最后一样(可以充分发挥并行优势);而数据分散存储于不同磁盘上,在读写的时候可以实现并发,所以,Raid0读写性能最好;但是没有容错功能,即任何一个磁盘的损坏会导致整个Raid的全部数据丢失;生产中使用单盘,要做成Raid0,否则可能无法使用。

以4块盘做Raid0为例:

2、Raid1

    Raid1又称为Mirror或Mirroring(镜像),它的宗旨是最大限度的保证用户数据的可用性和可修复性。Raid1的操作方式是把用户写入一个磁盘的数据百分之百的自动复制到另外一个磁盘上,从而实现存储双备份的数据。

    要制作Raid1,要求至少是两块磁盘,整个Raid大小等于两个磁盘中最小的那块磁盘的容量(当然,最好使用同样大小的磁盘),数据有50%的冗余,在存储时同时写入两块磁盘,实现了数据完整备份;对相对降低了写入性能,但是读取数据时可以并发,相当于两块Raid0的读取效率。

以两块盘为例做Raid1:

3、Raid5

    Raid5是一种存储性能,数据安全和存储成本兼顾的存储解决方案。

    Raid5需要三块或以上的物理磁盘,可以提供热备盘实现故障的恢复;采用奇偶校验,可靠性强,并且只有同时损坏两块硬盘时数据才会完全损坏,只损坏一块硬盘时,系统会根据存储的奇偶校验位重建数据,临时提供服务;此时如果有热备盘,系统还会自动在热备盘上重建故障磁盘上的数据:

    以四个硬盘组成的Raid5为例,其数据存储方式如下图,图中,P0为D0,D1,D2的奇偶校验信息,其他的以次类推。由图中可用看出,Raid5不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成Raid5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当Raid5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。


Raid5综合情况说明:

4、Raid10

Raid0+1,Raid1+0,称为Raid10?

Raid10和Raid01的区别:

    正如其名字一样RAID 0+1是RAID 0和RAID 1的组合形式,也称为RAID 10。

    以四个磁盘组成的RAID 0+1力例,其数据存储方式如图所示:RAID0+1是存储忡能 和数据安全兼顾的方案。它在提供1; RAID 1—样的数据安全保障的同时,也提供了与 RAID0近似的存储性能。

    由了 RAID 0+1也通过数据的100%备份功能提供数据安全保障,因此RAID 0+1的磁 盘空间利用率与RAID 1相同,存储成本高。

    RAID10和RAID01是将磁盘按照两种不同的方式进行的逻辑组合。

我们都以四块硬盘做RIAD来细说他们的区别:

    RAID10是先将四块硬盘在纵向上分别两两做镜像,镜像后再在横向上做条带。简而言之:RAID10是先做镜像后做条带。在这种情况下,如果只是坏掉其中的一个硬盘, 对RAID组的影响都不是非常大,只要不是同时坏掉其中的一个硬盘和他的镜像盘,RAID 组都不会崩溃。

    RAID01是先将四块硬盘中横向上两两做条带,然后再纵向上做镜像。简而言之:先条带后镜像。这种情况下如果两个条带上有任意两块硬盘坏掉了,则整个RAID组都将崩溃了。不管发生介质损坏的两块硬盘是否是镜像盘。


总结RAID10和RAID01在读和写的性能上没有太大的差別,从发生故障的槪率上看,RAID01是远大于RAID10的。一般情况下选样RAID10的情况会多些。

RAID 0+1的特点使其特別适用于既有大量数据需要存取,同时又对数据安全性要求严。

四、成本-可靠性对比图


文章转载自蜜蜂点滴,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论