RAID磁盘冗余探究

RAID磁盘冗余探究

RAID的全称是Redundant Arrays of Inexpensive Disk,可以翻译为廉价的磁盘冗余阵列。由加利福尼亚大学伯克利分校的一位教授在1988年提出,是一种磁盘管理方式。其产生的初衷是为了降低成本,但是为了达到RAID的功能,其造价并不便宜,所以后来改为Redundant Arrays of Independent Disks(独立磁盘冗余阵列)

其工作原理是:多个磁盘合成一个“阵列”来提供更好的性能、冗余,或者两者都提供

RAID的实现方式:操作系统(如windows, linux)称为软RAID

硬件卡实现(但价格昂贵)称为硬RAID

如果是软RAID,假如有几块大小不一的磁盘,每个磁盘都取100G来组合成RAID,这时系统就会产生对应的RAID设备,如/dev/sm0,/dev/sm1,/dev/sm2… 如果再将RAID挂载,假如挂载的是/mnt/raid目录下,对应的就是几块磁盘而非一块磁盘的大小,这里不同于分区。

RAID级别:

 

RAID-0: 条带卷,strip

如果是RAID-0,假设有一个非常大的名为file的文件存在于挂载的设备中,如/dev/sm0,挂载在/mnt/raid0下。RAID-0会将file切割成叫做chunk的单位,这样文件就可以跨磁盘存储。那么RAID-0到底是怎么存储的呢?先看看下面的图和解释吧!

RAID磁盘冗余探究

解释:如图,代表RAID-0的存储方式,即如果有四个盘,其写入顺序为(11、(22、(33、(44、(15、(26…….。这样,不论你是写入数据还是读取数据,都不是一块磁盘在工作,而是四块磁盘同时在读取写入,这就大大加快了读取写入时间。但是,有优点也有缺点。其缺点是如果四个磁盘同时写入,没有重复备份的磁盘的话,一旦有一块磁盘损坏,就会导致所有数据丢失。

补充:RAID在生产环境中至少要有二块磁盘,其磁盘利用率是100%

 

RAID-1: 镜像卷,mirror,其数据存放方式如下:

RAID磁盘冗余探究

解释:如图可知,(1)和(2)存放的是一样的数据。这样存取,有利于数据的保存,只要有一块磁盘存在,数据就不会丢失。但是其造价也高。数据与造价相比,道消彼长,如果是存放比较重要的数据,建议还是将造价放在次要位置。至少要有二块磁盘,利用率为1/n

 

RAID-4:与RAID-0相似,将文件分割成chunk。但是其写入与读取方式有所不同,详细如图所示:

RAID磁盘冗余探究

解释:同样是四个磁盘,但是前三个磁盘同RAID-0一样按照(11、(22、(33、(14、(25……的方式存储,至于第四个磁盘则存放通过异或校验得出的数据。这样如果损坏一块磁盘,可以加入一个新的,通过校验信息得出损坏的盘的数据。但是如果坏了第二块,就没办法恢复了,所以RAID-4只允许损坏一块磁盘。但是RAID4在实际中用到的并不多,因为事实证明,通常放校验数据的磁盘最容易坏。磁盘至少要有三块,磁盘利用率为n-1/n                                                                                                                                                                                                                                                                                                                                                                                                                                                                补充:什么是异或校验,如下

原理:相同为假,相异为真,假为0,真为1,如

1000110

0011011

1011101     ①和②按照其原理得出这个结果

 

RAID-5:也是同RAID-4相似,但存放校验数据的盘不是固定的。如下图:

RAID磁盘冗余探究

解释:这样每个磁盘都承担相同的压力,有效的解决了磁盘的冗余性,所以在实际中用到的比较多。允许坏一块磁盘,所以适用于保存不太重要的数据。但想要保持数据的百分之百安全,仍是不行。磁盘至少要有三块,磁盘利用率为n-1/n

 

RAID-6:虽然与RAID-0,RAID-4,RAID-5相似,但是更复杂,成本也更高了。

RAID磁盘冗余探究

解释:RAID-6允放损坏两块磁盘,所以适用于存放比较重要的数据。磁盘至少要有四块,磁盘利用率为n-2/n

 

RAID-10

RAID磁盘冗余探究

解释:如图可知,先使用RAID-1的存储方式,再使用RAID-0的方式,RAID-10相比RAID-01,在性能和使用率上没有多大区别,但RAID-10更好的是允许损坏的磁盘更多。

 

RAID-01RAID-01,是RAID-0RAID-1的组合,其工作方式如下:

RAID磁盘冗余探究

解释:方框内的数据采用RAID-0的方式存取下来,同时再用RAID-1的方式,备份一份,使两个方框内的内容相同。这样,如果一个或多个方框内的磁盘,仍然可以利用另一个方块内的数据恢复。但是如果两边各坏一个,那数据仍然也恢复不了。

 

 

原创文章,作者:xxcj,如若转载,请注明出处:http://www.178linux.com/85492

(0)
xxcjxxcj
上一篇 2017-08-26
下一篇 2017-08-26

相关推荐

  • Linux系统管理常用命令

    系统管理工具 进程的分类: CPU-Bound:CPU密集型,非交互。特别消耗CPU的,加密解密,压缩解压 IO-Bound:IO密集型,交互。大量的硬盘读写,例如复制文件 Linux系统状态的查看及管理工具:pstree, ps, pidof, pgrep, top, htop, glance, pmap, vmstat, dstat, kill, pki…

    Linux干货 2017-12-18
  • linux文件系统(ext2\ext3\ext4,xfs,btrfs…)的介绍[转载]

    ext2\ext3\ext4,xfs,btrfs 都是针对服务器系统越来越高效实用的日志文件系统 日志文件系统:    日志文件系统是一种即使在断电或者是操作系统崩溃的情况下保证文件系统一致性的途径。XFS对文件系统元数据提供了日志支持。当文件系统更新时,元数据会在实际的磁盘块被更新之前顺序写入日志。XFS的日志被保存在磁盘块的…

    Linux干货 2017-01-31
  • 学习积累01#计算机组成#Linux版本#基本命令

    第一周的积累 问题1:描述计算机的组成及其功能 CPU:中央处理器,主要功能是进行运算和逻辑运算,内部大致可分为控制单元、逻辑算术单元、存储单元; 主板:核心部件,是电脑的“脉络”,CPU\内存\控制核心电路均安装在主板上,各种外部设备也通过主板上的插槽相互连接; 硬盘:常见的外存储器,容量大,保存时间长、安全性高。接口主要分为IDE、SATA、SCSI。 …

    Linux干货 2016-10-25
  • Linux 系统架构

    1.内核     1.1.组成部分         1.1.1.系统调用接口         1.1.2.进程管理 &n…

    Linux干货 2016-06-04
  • Linux发展与应用

                                                      &nbsp…

    2017-04-05
  • N22-第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash # declare -i count1=0 declare -i count2=0 for i in $(awk -F : '{print $7}&#03…

    Linux干货 2016-10-17