zoukankan      html  css  js  c++  java
  • RAID总结

     RAID-0:

    这种模式若使用相同型号容量的磁盘来组成效果最佳。这种模式RAID会先将磁盘切出等量的区块chunk,当文件要存入RAID时先按照chunk的大小切割好,再依次存放到各个磁盘中去,由于磁盘会交错存放数据,因此数据会均匀的存储到各个磁盘上去,由于数据已经被切割并放置到不同的磁盘上,因此每个磁盘所负责的数据量都降低了。越多颗磁盘组成的RAID0性能会越好,因为每颗磁盘负责的数据量更低,每颗磁盘的容量最终会变成RAID0的总容量。由于数据是分散存放在各个磁盘上的,若有一磁盘损坏则整个RAID上的数据都将遗失。

    RAID-1:

    这种模式也是需要相同容量的磁盘,最好是一模一样的磁盘。如果不同容量的磁盘组成RAID-1,则以容量最小的一颗磁盘为主。这种模式的主要目的是让同一份数据,完整的保存在两颗磁盘上。一份数据传送到RAID-1后会被分成两股,并分别写到各个磁盘中去,由于同一份数据会被分别写入其他不同的磁盘,因此如果要写入100M数据时,数据先传送到I/O总线后会被复制多份到各个磁盘,结果数据量就变大了,因此在大量写入的 RAID-1的情况下,写入的性能会变得非常差。由于两颗磁盘内的数据一模一样,所以任何一颗磁盘损坏时,磁盘的数据还是可以完整的保存下来的。

    RAID-5:

    RAID-5至少需要3颗以上的磁盘才能组成这种类型的磁盘阵列,这种磁盘阵列的数据写入有些类似于RAID-0,不过每个循环的写入过程中,在每颗磁盘还加入一个同位检查数据,这个数据会记录其他磁盘的备份数据,用于当有磁盘损毁时的救援。每个循环写入时都会有部分的同位校验码被记录起来,且每次都依次记录在不同的磁盘上,因此当任何一个磁盘损坏时都能通过其他两个磁盘计算出此磁盘内的数据。不过由于有同位校验码存在,RAID5的总容量是整体磁盘数量减一颗,若损毁的磁盘数大于等于2颗时,整个RAID5数据将损毁。在读写性能上读取性能和RAID0有的一比,写性能由于数据在写入时要计算校验码,所以写性能增加有限。

    RAID-6:

    由于RAID5仅支持损毁一颗磁盘,后来又发展出另一种等级RAID6.RAID6最少需要4颗磁盘才能组成,使用2颗磁盘作校验码,此时磁盘损坏2颗时仍然能正常读取数据,读写性能上与RAID5类似。

    RAID-01:

    RAID01是先将2颗磁盘作RAID0,再将两颗组成RAID0的磁盘组成RAID1,此种阵列方式兼备了RAID0的优势,又具备RAID1的备份优势,不过若两组RAID0中同时损坏一个磁盘时,RAID01上的数据将有可能遗失,非常不安全。于是便出现了RAID0。

    RAID-10:

    RAID10在读写性能上与RAID10相同,不同的是他先将2个磁盘组成RAID1,然后再组成RAID0,此时每组RAID1都能损坏1颗磁盘。理论上最大磁盘的损坏量至少可以达到磁盘数的一半,数据的安全性极佳。

  • 相关阅读:
    异常:java.io.IOException: Too many open files:
    转载 Servlet3.0中使用注解配置Servle
    Spring 源码从github导入源码到idea2016
    git 命令
    常用linux命令
    mysql优化常用语句
    mysql中in、not in、exists和not exists的区别
    mysql优化
    php常用的数据结构算法
    算法(一)
  • 原文地址:https://www.cnblogs.com/paul8339/p/7126465.html
Copyright © 2011-2022 走看看