关于Raid的各种类型特点概要

关于Raid需要了解掌握的要点

为了提升磁盘的容错性与性能,计算机专家发明了Raid技术,即“廉价磁盘阵列”-Redundant Arrays  of Inexpensive(or Independent) Disks.

 

Raid常见的类型及各类型的特点如下:

  • Raid 0 — Stripping 数据条模式。数据分块(chunk)存储,分别放在不同的硬盘中。此模式至少需要2块硬盘。阵列总容量=n*(最小的那个硬盘容量),理论I/O性能提升2倍,但是没有容错能力,其中1块硬盘损坏,阵列存储的数据就会损坏。
  • Raid 1 — Mirroring 镜像模式。数据分别镜像存储在多个硬盘(即每个硬盘都存储一套相同的数据)。此模式至少需要2块硬盘。阵列总容量=最小的那个硬盘的容量,I/O性能比单个硬盘有所下降,具有容错能力,其中1块硬盘损坏,其他硬盘还有相同的数据可用。
  • Raid 4 — 数据分块存储。同时有1块硬盘不存储数据,专门用来做校验盘,存储其他硬盘存储的数据的校验码(对相应的2个数据块信息使用异或运算计算得出)。此模式至少需要3块硬盘。阵列总容量=(n-1)*(数据盘中最小的那个硬盘容量),理论I/O性能提升,但是由于校验盘存在访问压力大的问题所以性能会受到影响。具有容错能力,一个硬盘损坏,可以通过计算生成损坏的数据,不影响数据读写,但是此时阵列将处于降级模式(用计算生成数据造成性能损失)。
  • Raid 5 — 分布式校验存储。与Raid 4的校验算法和存储基本原理相同,区别在于校验码的存储不在一块硬盘上了,而是按规律依次分别存储在所有磁盘。根据第一次挑选存储校验码的磁盘的不同,分别有校验码的“左对齐”和“右对齐”类型。此模式至少需要3块硬盘。阵列总容量=(n-1)*(数据盘中最小的那个硬盘容量),理论I/O性能比Raid 4提升较大。容错能力与Raid 4相同,也有降级模式。
  • Raid 10 — 多硬盘先2个一对组Raid 1,再组Raid 0。此模式至少需要4块硬盘。此模式既有Raid 0的性能优势,同时也有Raid 1的容错能力(同时刚好损坏互为冗余的2个硬盘的概率较低)。

 

根据实现Raid的方式,又可以分为:

  1. 内部硬件实现
  2. 外接硬件实现
  3. 软件实现

Linux内核中有通过软件实现Raid的方式。通过mdadm命令进行操作实现。

本文来自投稿,不代表Linux运维部落立场,如若转载,请注明出处:http://www.178linux.com/88963

(0)
skysky
上一篇 2017-11-26 21:07
下一篇 2017-11-26 21:23

相关推荐

  • 制作引导分区

      使用虚拟机制作一个可以引导启动的简单系统。方法如下:   一、制作两个分区     1、添加一块新的硬盘,新建两个分区,格式化并挂载到/mnt/boot和/mnt/sysroot目录中;虚拟机添加硬盘的操作很简单就不做演示了,要注意的是添加的硬盘最好选择成“将虚拟磁盘存储为单个个文件”,并为将文件名修改为容易识别的…

    Linux干货 2016-01-18
  • linux网络配置

    一、 网络基本配置:  真不敢想象没有网络的一天应该怎样度过,但是有了网络就行了?原来刚有了网络时由于没有统一的标准,各大硬件厂商各自为政,都在搞网络,但是都只是同一厂商的设备可以进行通讯,就和不同的国家的人交流使用了不同的语言一样,难以将所有的网络连接起来,之后Internet有了统一的标准,大家都遵循它的标准,后来计算机才能进行网络通讯,同样将…

    Linux干货 2016-09-13
  • N25期—第五周作业

    1、 显示当前系统上root、fedora或user1用户的默认shell; grep -E "^(root|fedora|user1):" /etc/passwd | cut -d: -f7 2、找出/etc/rc.d/init.d/functions文件中某单词后面…

    Linux干货 2017-01-02
  • N28-第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。
    2、bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容及其示例演示。
    3、请使用命令行展开功能来完成以下练习:
    (1)、创建/tmp目录下的:a_c, a_d, b_c, b_d
    (2)、创建/tmp/mylinux目录下的:
    mylinux/
    ├── bin
    ├── boot
    │   └── grub
    ├── dev
    ├── etc
    │   ├── rc.d
    │   │   └── init.d
    │   └── sysconfig
    │   └── network-scripts
    ├── lib
    │   └── modules
    ├── lib64
    ├── proc
    ├── sbin
    ├── sys
    ├── tmp
    ├── usr
    │   └── local
    │   ├── bin
    │   └── sbin
    └── var
    ├── lock
    ├── log
    └── run
    4、文件的元数据信息有哪些,分别表示什么含义,如何查看?如何修改文件的时间戳信息。
    5、如何定义一个命令的别名,如何在命令中引用另一个命令的执行结果?
    6、显示/var目录下所有以l开头,以一个小写字母结尾,且中间至少出现一位数字(可以有其它字符)的文件或目录。
    7、显示/etc目录下,以任意一个数字开头,且以非数字结尾的文件或目录。
    8、显示/etc目录下,以非字母开头,后面跟了一个字母以及其它任意长度任意字符的文件或目录。
    9、在/tmp目录下创建以tfile开头,后跟当前日期和时间的文件,文件名形如:tfile-2016-05-27-09-32-22。
    10、复制/etc目录下所有以p开头,以非数字结尾的文件或目录到/tmp/mytest1目录中。
    11、复制/etc目录下所有以.d结尾的文件或目录至/tmp/mytest2目录中。
    12、复制/etc/目录下所有以l或m或n开头,以.conf结尾的文件至/tmp/mytest3目录中。

    Linux干货 2017-12-11
  • Linux第四周学习博客作业

    对第四周学习的内容进行总结

    Linux干货 2017-12-23
  • 马哥linux运维第一天感受

    101个人的大家庭

    Linux干货 2018-03-26