磁盘阵列的原理及相关知识[2]

发表于:2015-08-15 14:08 阅读:

  Oaraid?可将同一数据分段放在不同的磁盘,比如磁盘阵列定义的分段为4KB,而5KB的数据可把4KB的数据放在一个磁盘的分段上,另外1KB的数据放在另一磁盘的分段,而另一笔数据可从这个磁盘分段所剩下的3KB空位放起,这样不但能增加磁盘的利用率,而且可同时启动多个磁盘一起动作,增加存取的速度,在很多情况之下,即使是小于一个分段的数据,也能得到负载均衡的好处,所以分段大小优化心脏可作跨盘分段(同一数据分段放在不同的磁盘分段)。可得到较好的存取效能,这也是为什么OAraid?; Viper-II5000系列能有37MB/sec的存取效能的原因。

  若以N表示磁盘的数目,R表示读取,W表示写入,S表示可使用空间,则数据分段的性能为:

  RN(可同时读取所有磁盘)

  WN(可同时写入所有磁盘)

  SN(可利用所有的磁盘,并有最佳的使用率)

  Disk striping也称为RAID 0,很多人以为RAID 0没有什么,其实这是非常错误的观念,因为RAID 0使磁盘的输入输出有最高的效率。而磁盘阵列有更好的效率的原因除数据分段外,它可以同时执行多个输入输出的要求,因为阵列中的每一个磁盘都能独立动作,分段放在不同的磁盘,不同的磁盘可同时作读写,而且能在快取内存及磁盘作并行存取(parallel access)的动作。Striping打破了单一磁盘所形成的瓶颈。Oapro对以上图41GB硬盘的阵列和14GB的硬盘作过比较,磁盘阵列的效能约为单一磁盘的33.5倍,若4个磁盘分别接Oaraid?; 4SCSI通道形成阵列,其I/O性能是单一磁盘的4倍。但是否真能表现出这种能力,要视操作系统,用户数目或工作负荷的特性而定,要能同时得到各个磁盘的交通,其工作负荷也必须分布在各个磁盘。

  从上面两点我们可以看出,disk spanning定义了RAID的基本形式,提供了一个便宜、灵活、高性能系统结构,而disk stripping解决了数据的存取效率和磁盘的利用率问题,RAID 1RAID 5是在此基础上提供磁盘安全的方案。

  RAID 1

  RAID 1是使用磁盘镜像(disk mirroring)的技术。磁盘镜像应用在RAID 1之前就在很多系统中使用,它的方式是在工作磁盘(working disk)之外再加一额外的备份磁盘(backup disk),两个磁盘所储存的数据完全一样,数据写入工作磁盘的同时亦写入备份磁盘。

  一般镜像对磁盘的读取有几种方式:

  1 只读取工作磁盘,镜像磁盘只是作后备

  2 两个硬盘同时读取,采用选取回应的磁盘的数据

  3 把不同的读取要求分布在不同的磁盘上

  4 直接读主磁盘,如主磁盘正忙,则读取镜像磁盘,如两个磁盘都忙碌,则采用3的方式以分散负载

  5 把磁盘的容量分为两半,一个磁盘只读0N/2(磁盘外侧)的区域,另一磁盘只读N/2N(磁盘内侧)的区域。

  以上方式除1之外,其余都比单一磁盘的效能来的高,能提高多少和系统有关,但以5而言,如数据主不到磁盘的一半,则和单一磁盘无异。

  写入也有几种方式:

  1 同时写入两个磁盘,并等待两个盘的数据完好。这种方式比单个磁盘稍慢。

  2 直接写入主磁盘,而在镜像磁盘不忙时才写入,这样比方式1有较好的性能,但在某些读取的方式上会导致数据不一致,在引非同步情况之下,若主磁盘故障会使数据失落。

  磁盘镜像不见得就是RAID 1,一般磁盘镜像和RAID 1有两点最大的不同:下图为RAID 1,每一笔数据都储存两份:

  磁盘0 磁盘1 磁盘2 磁盘3

  A0 A1 A2 A3

  A4 A5 A6 A7

  … … … …

  4N-3 4N-2 4N-1 4N

  从上图可以看出:

  RN(可同时读取所有磁盘)

  WN/2(同时写入磁盘数)

 

 


(非特殊说明,本文版权归原作者所有,转载请注明出处 )
鸣人致力于为企业提供数据恢复、机房建设、数据库运行、运营及安全等全方位服务。




想在手机上、随时获取互联网前沿、设计资讯以及各种意想不到的"福利"吗?通过微信扫描二维码快速添加