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

相关推荐

  • yum 仓库

    Yum 仓库     yum源就是一个软件集合地,你只需要搜索并安装你想要的软件,它会帮你解决大部分软件的依赖问题。本地源比如说光盘里面一般会附带一些软件,这个时候就可以把光盘当成本地源来安装软件。网络源比如说aliyun的镜像网站,这就属于网络源,可以通过互联网把软件下载下来并安装。   yum 仓库 &n…

    2017-06-24
  • GNU awk工具的使用解析

    GNU awk: 简介:awk是一个数据处理工具。它比较倾向于将一行分成多个“字段”来处理。所以,awk比较适合处理小型数据。 gawk – pattern scanning and processing language 实现原理: 基本用法:gawk [options] 'program' FILE program:PAT…

    Linux干货 2016-09-21
  • N24期linux之学习宣言

        学习linux时间已经过去了一周之余,每天下班后拖着疲惫的身体回家。虽然很累,但也觉得这次选择很值得,但愿以后自己发展的会越来越好!     我的学习宣言是:     刻苦学习,努力超越自己。     明天的我一定会感谢今天努力的自己!     努力 …

    Linux干货 2016-10-29
  • 计算机与操作系统,linux的发展史

    一台真正意义上的计算机都是由硬件与软件组成的。而根据冯诺依曼结构计算机由控制器、运算器、存储器、输入设备、输出设备五大部分组成。 硬件 控制器:(Controler) 控制程序的执行 运算器:(ALU,Arithmetic Logic Unit) 完成数据的加工处理 储存器:(Menory) 记忆程序和数据&…

    Linux干货 2016-10-26
  • Docker 简介

    Docker在现有云计算虚拟化中是非常火的一个项目,那么他和虚拟化有什么不同呢 从上图来看,好像和我们之前说到的虚拟化并没有什么不同,但这里需要说明的是在各guest主机上,是没有操作系统的,他们共用Host主机上的内核空间,只对用户空间进行了隔离。 因此在这种环境下我们不把他称为虚拟化而称作容器。 此种方式的实现主要基于了linux内核自带的两项技术,分别…

    2017-03-19
  • Linux文件系统

    文件是什么?存储空间内存储的有边界的一段流式数据,对数据可以做到按名存取。众多文件是如何有效的组织起来?1.  平面化把众多文件放在一起。当想查找某个文件时,需要遍历所有文件,当文件数目足够多的时候,查找一个文件将会非常慢,效率极低。2.  层级结构化根据后续查找文件的筛选条件进行分类,逐层放置,通常要查找一个文件,只需要从最高层级开始,…

    2017-09-05