存储 频道

畅谈RAID 3和RAID 4

  【IT168 技术】RAID 是由美国加州大学伯克利分校的D.A. Patterson教授在1988年提出的。RAID 是Redundent Array of Inexpensive Disks的缩写,直译为“廉价冗余磁盘阵列”,也简称为“磁盘阵列”。后来RAID 中的字母I被改作了Independent,RAID 就成了“独立冗余磁盘阵列”,但这只是名称的变化,实质性的内容并没有改变。

  可以把RAID 理解成一种使用磁盘驱动器的方法,它将一组磁盘驱动器用某种逻辑方式联系起来,作为逻辑上的一个磁盘驱动器来使用。一般情况下,组成的逻辑磁盘驱动器的容量要小于各个磁盘驱动器容量的总和。RAID 的具体实现可以靠硬件也可以靠软件,Windows NT操作系统就提供软件RAID 功能。RAID 一般是在SCSI磁盘驱动器上实现的,因为IDE磁盘驱动器的性能发挥受限于IDE接口(IDE只能接两个磁盘驱动器,传输速率最高1.5MBps)。IDE通道最多只能接4个磁盘驱动器,在同一时刻只能有一个磁盘驱动器能够传输数据,而且IDE通道上一般还接有光驱,光驱引起的延迟会严重影响系统速度。SCSI适配器保证每个SCSI通道随时都是畅通的,在同一时刻每个SCSI磁盘驱动器都能自由地向主机传送数据,不会出现像IDE磁盘驱动器争用设备通道的现象。

  RAID 的优点

  1.成本低,功耗小,传输速率高。在RAID 中,可以让很多磁盘驱动器同时传输数据,而这些磁盘驱动器在逻辑上又是一个磁盘驱动器,所以使用RAID 可以达到单个的磁盘驱动器几倍、几十倍甚至上百倍的速率。这也是RAID 最初想要解决的问题。因为当时CPU的速度增长很快,而磁盘驱动器的数据传输速率无法大幅提高,所以需要有一种方案解决二者之间的矛盾。RAID 最后成功了。

  2.可以提供容错功能。这是使用RAID 的第二个原因,因为普通磁盘驱动器无法提供容错功能,如果不包括写在磁盘上的CRC(循环冗余校验)码的话。RAID 和容错是建立在每个磁盘驱动器的硬件容错功能之上的,所以它提供更高的安全性。

  3.RAID 比起传统的大直径磁盘驱动器来,在同样的容量下,价格要低许多。

  RAID 的分级

  1.RAID 0级,无冗余无校验的磁盘阵列。数据同时分布在各个磁盘驱动器上,没有容错能力,读写速度在RAID 中最快,但因为任何一个磁盘驱动器损坏都会使整个RAID 系统失效,所以安全系数反倒比单个的磁盘驱动器还要低。一般用在对数据安全要求不高,但对速度要求很高的场合。

  2.RAID 1级,镜象磁盘阵列。每一个磁盘驱动器都有一个镜像磁盘驱动器,镜像磁盘驱动器随时保持与原磁盘驱动器的内容一致。RAID 1具有最高的安全性,但只有一半的磁盘空间被用来存储数据。主要用在对数据安全性要求很高,而且要求能够快速恢复被损坏的数据的场合。

  3.RAID 2级,纠错海明码磁盘阵列。磁盘驱动器组中的第一个、第二个、第四个……第2n个磁盘驱动器是专门的校验盘,用于校验和纠错,例如七个磁盘驱动器的RAID 2,第一、二、四个磁盘驱动器是纠错盘,其余的用于存放数据。使用的磁盘驱动器越多,校验盘在其中占的百分比越少。RAID 2对大数据量的输入输出有很高的性能,但少量数据的输入输出时性能不好。RAID 2很少实际使用。

  4.RAID 3和RAID 4,奇校验或偶校验的磁盘阵列。不论有多少数据盘,均使用一个校验盘,采用奇偶校验的方法检查错误。任何一个单独的磁盘驱动器损坏都可以恢复。RAID 3和RAID 4的数据读取速度很快,但写数据时要计算校验位的值以写入校验盘,速度有所下降。RAID 3和RAID 4的使用也不多。

  5.RAID 5级,无独立校验盘的奇偶校验磁盘阵列。同样采用奇偶校验来检查错误,但没有独立的校验盘,校验信息分布在各个磁盘驱动器上。RAID 5对大小数据量的读写都有很好的性能,被广泛地应用。

  从RAID 1到RAID 5的几种方案中,不论何时有磁盘损坏,都可以随时拔出损坏的磁盘再插入好的磁盘(需要硬件上的热插拔支持),数据不会受损,失效盘的内容可以很快地重建,重建的工作也由RAID 硬件或RAID 软件来完成。但RAID 0不提供错误校验功能,所以有人说它不能算作是RAID ,其实这也是RAID 0为什么被称为0级RAID 的原因——0本身就代表“没有”。

1
相关文章