Linux中RAID详解

RAID简介

Linux中RAID详解

 

        单个硬盘使用很大的问题是:数据存储在单个硬盘上,有可能频繁的读写导致这个硬盘坏了,生产中,这种情况损失很大。因此,我们需要有一种手段来实现这种容错功能。所以RAID出现了,RAID叫做廉价的磁盘冗余阵列:多个磁盘合成一个阵列来提供更好的性能、冗余,或者两者都能提供!

下面我们来看看生活生产中常用的几种RAID合集!

 

1、RAID-0 (如下图所示)

优点:RAID-0代表了所有RAID级别中最高的存储性能。它提高存储性能的原理是把连续的数据分散到多个磁盘上存取,这样,系统有数据请求就可以被多个磁盘并行的执行,每个磁盘执行属于它自己的那部分数据请求。这种数据上的并行操作可以充分利用总线的带宽,显著提高磁盘整体存取性能。

缺点:RAID-0的缺点是不提供数据冗余,因此一旦用户数据损坏,损坏的数据将无法得到恢复。

总结:RAID-0具有的特点,使其特别适用于对性能要求较高,而对数据安全不太在乎的领域,如图形工作站等。对于个人用户,RAID-0也是提高硬盘存储性能的绝佳选择。

raid

2、RAID-1 (如下图所示)

优点:RAID-1又称为Mirror或Mirroring(镜像),它的宗旨是最大限度的保证用户数据的可用性和可修复性。 RAID-1的操作方式是把用户写入硬盘的数据百分之百地自动复制到另外一个硬盘上。由于对存储的数据进行百分之百的备份,在所有RAID级别中,RAID-1提供最高的数据安全保障。

缺点:备份数据占了总存储空间的一半,因而Mirror(镜像)的磁盘空间利用率低,存储成本高

总结:Mirror虽不能提高存储性能,但由于其具有的高数据安全性,使其尤其适用于存放重要数据,如服务器和数据库存储等领域。

1

3、RAID-5 (如下图所示)

优点:RAID-5 是一种存储性能、数据安全和存储成本兼顾的存储解决方案。它不对存储的数据进行备份,而是把数据和相对应的奇偶校验信息存储到组成RAID-5的各个磁盘上,并且奇偶校验信息和相对应的数据分别存储于不同的磁盘上。当RAID-5的一个磁盘数据发生损坏后,利用剩下的数据和相应的奇偶校验信息去恢复被损坏的数据。

缺点:数据安全保障程度要比Mirror(RAID-1)低,写入数据的速度比对单个磁盘进行写入操作稍慢。

总结:RAID-5可以理解为是RAID-0和RAID-1的折衷方案。如果可用性、成本和性能都同样重要,则根据一般的数据传输和硬盘的数量选择RAID-5。

5

4、RAID-10 (如下图所示)

优点:RAID-10是一个RAID-1与RAID-0的组合体,它是利用奇偶校验实现条带集镜像,所以它继承了RAID-0的快速和RAID-1的安全。基础4盘的情况下,RAID-10允许最多2块盘故障,随着硬盘数量的增多,容错量也会相对应提升。这是RAID-5无法做到的。

缺点:对盘的数量要求稍高,磁盘使用率为总物理存储量的一半。价格相对较高。

总结:RAID-10以RAID-0为执行阵列,以RAID-1为数据保护阵列,它具有与RAID-1一样的容错能力,由于使用RAID-0作为执行等级,因此具有较高的I/O宽带,对于那些想在RAID-1基础上大幅提高性能的用户,它是一个完美的解决方案。RAID-10适用于数据库存储服务器等需要高性能、高容错但对容量要求不大的场合。

10

5、RAID-50 (如下图所示)

优点:RAID-50是RAID-5与RAID-0的结合。每个RAID-5子磁盘组要求三个硬盘。RAID-50具备更高的容错能力,因为它允许某个组内有一个磁盘出现故障,而不会造成数据丢失。

缺点:磁盘故障会影响吞吐量。故障后重建信息的时间比镜像配置情况下要长

总结:RAID-50最少需要6个驱动器,它最适合需要高可靠性存储、高读取速度、高数据传输性能的应用。这些应用包括事务处理和有许多用户存取小文件的办公应用程序。

50

6、JBOD (如下图所示)

优点:JBOD与RAID阵列相比较的优势在于它的低成本,可以将多个磁盘合并到共享电源和风扇的盒子里。市场上常见的JBOD经常安装在19英寸的机柜中,因此提供了一种经济的节省空间的配置存储方式。随着更高容量的磁盘驱动器投入市场,采用具有几个TB的磁盘建立JBOD配置成为可能。

缺点:在JBOD的使用过程中,最主要的问题是JBOD在单独的磁盘出现故障的恢复能力,如果没有恰当的迂回能力,那么一个驱动器的故障就可能导致整个JBOD的失效

总结:由于JBOD一般在使用中都包含多个磁盘,因此总的存储容量十分巨大,而如果一个磁盘的故障就会造成整个设备中的故障,势必对系统是一个巨大风险。其中的一个解决办法是软件RAID。从主机端来看,采用软件RAID和JBOD的结合与硬件RAID在逻辑上没有任何区别,只是软件RAID会消耗一部分主机资源,而且与硬件RAID相比,无法到达高性能系统的苛刻要求。

jbod

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

(3)
上一篇 2018-05-05 15:19
下一篇 2018-05-05 17:14

相关推荐

  • nginx实现请求转发

    反向代理适用于很多场合,负载均衡是最普遍的用法。 nginx 作为目前最流行的web服务器之一,可以很方便地实现反向代理。 nginx 反向代理官方文档: NGINX REVERSE PROXY 当在一台主机上部署了多个不同的web服务器,并且需要能在80端口同时访问这些web服务器时,可以使用 nginx 的反向代理功能: 用 nginx 在80端口监听所…

    Linux笔记 2018-07-08
  • Linux发行版的基础目录名称命名法则及功用规定

    FHS filesystem hierarchy standard /bin: 所有用户可用的基本命令程序文件 /sbin: 供系统管理使用的工具程序 /boot: 引导加载器必须用到的各静态文件:kernel,initramfs(initrd),grub等; /dev: 存储特殊文件或设备文件 /etc:系统程序的配置文件,只能为静态 /home:普通的用…

    Linux笔记 2018-05-11
  • 进程和计划任务

    进程间的状态转化、以及与进程相关的配置命令和文件;作业管理和任务计划

    2018-05-04
  • shell打印选择菜单shell

    每天一练小脚本

    Linux笔记 2018-05-19
  • 网络管理。

    网络管理: IEEE 802.3 (以太网)(物理层及数据联络层)wifiFDDI 城市网络OSI 开放系统互联,网络国际ISO 国际标准化组织ATM 异步传输模式细轴网线 最大185m粗轴网线 最大500m普通网线 最大100m 单工:单向传输数据双工:双向传输数据全双工:同时双向半双工:轮流双向 冲突域:网桥可以隔离冲突域。广播域:单播:unicast广…

    Linux笔记 2018-05-13
  • sed的用法

    sed是一种流编辑器,它一次处理一行内容。 处理时,把当前处理的行存储在临时缓冲区(pattern space),同时输出到屏幕,接着用sed命令处理缓冲区中的内容,接着读取下一行,这样不断重复,直到文件末尾。 用法: sed -[options] [操作] inputfile -n:不输出模式空间内容到屏幕,即不自动打印 -e: 多点编辑 -f:/PATH…

    2018-04-22