博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
RAID总结
阅读量:5965 次
发布时间:2019-06-19

本文共 1202 字,大约阅读时间需要 4 分钟。

 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颗磁盘。理论上最大磁盘的损坏量至少可以达到磁盘数的一半,数据的安全性极佳。

 

转载地址:http://prvax.baihongyu.com/

你可能感兴趣的文章
统计代码行数的方法梳理
查看>>
SEO切忌犯的9种作弊手段
查看>>
自用迷你版的Deferred
查看>>
【c++】iostreeam中的类为何不可以直接定义一个无参对象呢
查看>>
一句话总结.Net下struct和class内存分配方面的区别
查看>>
Linux下eclipse编译C/C++程序遇到 undefined reference to `pthread_create'的异常解决办法
查看>>
ajax上传图片的本质
查看>>
转]最长递增子序列问题的求解
查看>>
SilverLight:基础控件使用(6)-Slider控件
查看>>
Android写的一个设置图片查看器,可以调整透明度
查看>>
第 5 章 File Share
查看>>
判断字符串解析是JsonObject或者JsonArray
查看>>
[LeetCode] Implement strStr()
查看>>
多模块Struts应用程序的几个问题(及部分解决方法)
查看>>
1.2. MariaDB
查看>>
MVC+LINQToSQL的Repository模式之(二)数据基类
查看>>
动手写缓存
查看>>
【Swift】UILabel 设置内边距
查看>>
Linux命令英文全称
查看>>
SpringSide示例之HelloWorld
查看>>