磁盘阵列(Disk Array) 及磁盘阵列常用技术术语

磁盘阵列(Disk Array) 及磁盘阵列常用技术术语

1.为什么需要磁盘阵列

如何增加磁盘的存取(access)速度,如何防止数据因磁盘的故障而失落及如何有效的利用磁盘空间,一直是电脑专业人员和用户的困扰;而大容量磁盘的价格非常昂贵,对用户形成很大的负担。磁盘阵列技术的产生一举解决了这些问题。

过去十年来,CPU的处理速度增加了五十倍有多,内存(memory)的存取速度亦大幅增加,而数据储存装置--主要是磁盘(hard disk)--的存取速度只增加了三、四倍,形成电脑系统的瓶颈,拉低了电脑系统的整体性能(throughput),若不能有效的提升磁盘的存取速度,CPU、内存及磁盘间的不平衡将使CPU及内存的改进形成浪费。

目前改进磁盘存取速度的的方式主要有两种。一是磁盘快取控制(disk cache controller),它将从磁盘读取的数据存在快取内存(cache memory)中以减少磁盘存取的次数,数据的读写都在快取内存中进行,大幅增加存取的速度,如要读取的数据不在快取内存中,或要写数据到磁盘时,才做磁盘的存取动作。这种方式在单工环境(single-tasking environment)DOS之下,对大量数据的存取有很好的性能(量小且频繁的存取则不然),但在多工(multi-tasking)环境之下(因为要不停的作数据交换(swapping)的动作)或数据库(database)的存取(因为每一记录都很小)就不能显示其性能。这种方式没有任何安全保障。 其二是使用磁盘阵列的技术。磁盘阵列是把多个磁盘组成一个阵列,当作单一磁盘使用,它将数据以分段(striping)的方式储存在不同的磁盘中,存取数据时,阵列中的相关磁盘一起动作,大幅减低数据的存取时间,同时有更佳的空间利用率。磁盘阵列所利用的不同的技术,称为RAID level,不同的level针对不同的系统及应用,以解决数据安全的问题。

一般高性能的磁盘阵列都是以硬件的形式来达成,进一步的把磁盘快取控制及磁盘阵列结合在一个控制器(RAID controller)或控制卡上,针对不同的用户解决人们对磁盘输出入系统的四大要求:
(1)
增加存取速度,
(2)
容错(fault tolerance),即安全性
(3)
有效的利用磁盘空间;
(4)
尽量的平衡CPU,内存及磁盘的性能差异,提高电脑的整体工作性能。

2.磁盘阵列原理

磁盘阵列中针对不同的应用使用的不同技术,称为RAID level, RAIDRedundant Array of Inexpensive Disks的缩写,而每一level代表一种技术,目前业界公认的标准是RAID 0~RAID 5。这个level并不代表技术的高低,level 5并不高于level 3,level 1也不低过level 4,至于要选择那一种RAID level的产品,纯视用户的操作环境(operating environment)及应用(application)而定,level的高低没有必然的关系。RAID 0RAID 1适用于PCPC相关的系统如小型的网络服务器(network server)及需要高磁盘容量与快速磁盘存取的工作站等,因为比较便宜,但因一般人对磁盘阵列不了解,没有看到磁盘阵列对他们价值,市场尚未打开;RAID 2RAID 3适用于大型电脑及影像、CAD/CAM等处理;RAID 5多用于OLTP,因有金融机构及大型数据处理中心的迫切需要,故使用较多而较有名气,但也因此形成很多人对磁盘阵列的误解,以为磁盘阵列非要RAID 5不可;RAID 4较少使用,因为两者有其共同之处,RAID 4有其先天的限制。其他如RAID 6,RAID 7,乃至RAID 10,都是厂商各做各的,并无一致的标准,在此不作说明。介绍各个RAID level之前,先看看形成磁盘阵列的两个基本技术:

译为磁盘延伸,能确切的表示disk spanning这种技术的含义。如下图所示,DFTraid 磁盘阵列控制器,联接了四个磁盘:

这四个磁盘形成一个阵列(array),而磁盘阵列的控制器(RAID controller)是将此四个磁盘视为单一的磁盘,DOS环境下的C:盘。这是disk spanning的意义,因为把小容量的磁盘延伸为大容量的单一磁盘,用户不必规划数据在各磁盘的分布,而且提高了磁盘空间的使用率。DFTraidSCSI磁盘阵列更可连接几十个磁盘,形成数十GB到数百GB的阵列,使磁盘容量几乎可作无限的延伸;而各个磁盘一起作取存的动作,比单一磁盘更为快捷。很明显的,有此阵列的形成而产生RAID的各种技术。我们也可从上图看出inexpensive(便宜)的意义,因为四个250MBbytes的磁盘比一个1GBytes的磁盘要便宜,尤其以前大磁盘的价格非常昴贵,但在磁盘越来越便宜的今天,inexpensive已非磁盘阵列的重点,虽然对于需要大磁盘容量的系统,仍是考虑的要点。

磁盘  因为磁盘阵列是将同一阵列的多个磁盘视为单一的虚拟磁盘(virtual disk),所以其数据是以分段(block or segment)的方式顺序存放在磁盘阵列中,如下图:

磁盘0

 

磁盘1

 

磁盘2

 

磁盘3

A0-A1

B0-B1

C0-C1

D0-D1

 

A2-A3

B2-B3

C2-C3

D2-D3

 

A4-A5

B4-B5

C4-C5

D4-C5

 

A6-A7

B6-B7

C6-C7

D6-D7

数据按需要分段,从第一个磁盘开始放,放到最后一个磁盘再回到第一个磁盘放起,直到数据分布完毕。至于分段的大小视系统而定,有的系统或以1KB最有效率,或以4KB,或以6KB,甚至是4MB8MB,但除非数据小于一个扇区(sector,521bytes),否则其分段应是512byte的倍数。因为磁盘的读写是以一个扇区为单位,若数据小于512bytes,系统读取该扇区后,还要做组合或分组(视读或写而定)的动作,浪费时间。从上图我们可以看出,数据以分段于在不同的磁盘,整个阵列的各个磁盘可同时作读写,故数据分段使数据的存取有最好的效率,理论上本来读一个包含四个分段的数据所需要的时间约=(磁盘的access time +数据的transfer time)X4,现在只要一次就可以完成。

若以N表示磁盘的数目,R表示读取,W表示写入,S表示可使用空间,则数据分段的性能为:
R:N(
可同时读取所有磁盘)
W:N(
可同时写入所有磁盘)
S:N(
可利用所有的磁盘,并有最佳的使用率)

Disk striping也称为RAID 0,很多人以为RAID 0没有甚么,其实这是非常错误的观念,因为RAID 0使磁盘的输出入有最高的效率。而磁盘阵列有更好效率的原因除数据分段外,它可以同时执行多个输出入的要求,因为阵列中的每一个磁盘都能独立动作,分段放在不同的磁盘,不同的磁盘可同时作读写,而且能在快取内存及磁盘作并行存取(parallel access)的动作,但只有硬件的磁盘阵列才有此性能表现。

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

RAID 1

RAID 1是使用磁盘镜像(disk mirroring)的技术。磁盘镜像应用在RAID 1之前就在很多系统中使用,它的方式是在工作磁盘(working disk)之外再加一额外的备份磁盘(backup disk),两个磁盘所储存的数据完全一样,数据写入工作磁盘的同时亦写入备份磁盘。磁盘镜像不见得就是RAID 1,Novell NetWare亦有提供磁盘镜像的功能,但并不表示NetWare有了RAID 1的功能。一般磁盘镜像和RAID 1有二点最大的不同:

RAID 1无工作磁盘和备份磁盘之分,多个磁盘可同时动作而有重叠(overlapping)读取的功能,甚至不同的镜像磁盘可同时作写入的动作,这是一种最佳化的方式,称为负载平衡(load-balance)。例如有多个用户在同一时间要读取数据,系统能同时驱动互相镜像的磁盘,同时读取数据,以减轻系统的负载,增加I/O的性能。

RAID 1的磁盘是以磁盘延伸的方式形成阵列,而数据是以数据分段的方式作储存,因而在读取时,它几乎和RAID 0有同样的性能。从RAID的结构就可以很清楚的看出RAID 1和一般磁盘镜像的不同。

下图为RAID 1,每一笔数据都储存两份

磁盘0

 

磁盘1

 

磁盘0

 

磁盘1

A0

A2

A4

B1

 

A1

A3

B0

B2

 

A0

A2

A4

B1

 

A1

A3

B0

B2

从上图可以看出:
R:N(
可同时读取所有磁盘)
W:N/2(
同时写入磁盘数)
S:N/2(
利用率)

读取数据时可用到所有的磁盘,充分发挥数据分段的优点;写入数据时,因为有备份,所以要写入两个磁盘,其效率是N/2,磁盘空间的使用率也只有全部磁盘的一半。

很多人以为RAID 1要加一个额外的磁盘,形成浪费而不看好RAID 1,事实上磁盘越来越便宜,并不见得造成负担,况且RAID 1有最好的容错(fault tolerance)能力,其效率也是除RAID 0之外最好的。我们可视应用的不同,在同一磁盘阵列中使用不同的RAID level,如华艺科技公司的DFTraid系列都可同一磁盘阵列中定义八个逻辑磁盘(logic disk),分别使用不同的RAID level,分为C:,D:E:三个逻辑磁盘(LUN0,LUN1,LUN2).

RAID 1完全做到了容错包括不停机(non-stop),当某一磁盘发生故障,可将此磁盘拆下来而不影向其他磁盘的操作;待新的磁盘换上去之后,系统即时做镜像,将数据重新复上去,RAID 1在容错及存取的性能上是所有RAID level之冠。

在磁盘阵列的技术上,RAID 1RAID 5,不停机的意思表示在工作时如发生磁盘故障,系统能持续工作而不停顿,仍然可作磁盘的存取,正常的读写数据;而容错则表示即使磁盘故障,数据仍能保持完整,可让系统存取到正确的数据,SCSI的磁盘阵列更可在工作中抽换磁盘,并可自动重建故障磁盘的数据。磁盘阵列之所以能做到容错及不停机,是因为它有冗余的磁盘空间可资利用,这也就是Redundant的意义。

RAID 2

RAID 2是把数据分散为位元(bit)或块(block),加入海明码Hamming Code,在磁盘阵列中作间隔写入(interleaving)到每个磁盘中,而且地址(address)都一样,也就是在各个磁盘中,其数据都在相同的磁道(cylinder or track)及扇区中。RAID 2的设计是使用共轴同步(spindle synchronize)的技术,存取数据时,整个磁盘阵列一起动作,在各作磁盘的相同位置作平行存取,所以有最好的存取时间(access time),其总线(bus)是特别的设计,以大带宽(band wide)并行传输所存取的数据,所以有最好的传输时间(transfer time)。在大型档案的存取应用,RAID 2有最好的性能,但如果档案太小,会将其性能拉下来,因为磁盘的存取是以扇区为单位,RAID 2的存取是所有磁盘平行动作,而且是作单位元的存取,故小于一个扇区的数据量会使其性能大打折扣。RAID 2是设计给需要连续且大量数据的电脑使用的,如大型电脑(mainframe to supercomputer)、作影像处理或CAD/CAM的工作站(workstation),并不适用于一般的多用户环境、网络服务器(network server),小型机或PC

RAID 2的安全采用内存阵列(memory array)的技术,使用多个额外的磁盘作单位错误校正(single-bit correction)及双位错误检测(double-bit detection);至于需要多少个额外的磁盘,则视其所采用的方法及结构而定,例如八个数据磁盘的阵列可能需要三个额外的磁盘,有三十二个数据磁盘的高档阵列可能需要七个额外的磁盘。

RAID 3

RAID 3的数据储存及存取方式都和RAID 2一样,但在安全方面以奇偶校验(parity check)取代海明码做错误校正及检测,所以只需要一个额外的校检磁盘(parity disk)。奇偶校验值的计算是以各个磁盘的相对应位作XOR的逻辑运算,然后将结果写入奇偶校验磁盘,任何数据的修改都要做奇偶校验计算,如下图:

磁盘0

 

磁盘1

 

磁盘2

 

磁盘3

 

磁盘4

A0

A4

B3

C2

 

A1

B0

B4

C3

 

A2

A1

C0

C4

 

A3

A2

C1

D0

 

P

P

P

P

如某一磁盘故障,换上新的磁盘后,整个磁盘阵列(包括奇偶校验磁盘)需重新计算一次,将故障磁盘的数据恢复并写入新磁盘中;如奇偶校验磁盘故障,则重新计算奇偶校验值,以达容错的要求.

较之RAID 1RAID 2,RAID 385%的磁盘空间利用率,其性能比RAID 2稍差,因为要做奇偶校验计算;共轴同步的平行存取在读档案时有很好的性能,但在写入时较慢,需要重新计算及修改奇偶校验磁盘的内容。RAID 3RAID 2有同样的应用方式,适用大档案及大量数据输出入的应用,并不适用于PC及网络服务器。

RAID 4

RAID 4也使用一个校验磁盘,但和RAID 3不一样,如下图:

磁盘0

 

磁盘1

 

磁盘2

 

磁盘3

 

磁盘4

A0-A1

B3-B4

D1-D2

E4-F0

 

A2-A3

C0-C1

D3-D4

F1-F2

 

A4-B0

C2-C3

B0-B1

F3-F4

 

B1-B2

C4-D0

B2-B3

G0-G1

 

P

P

P

P

RAID 4是以扇区作数据分段,各磁盘相同位置的分段形成一个校验磁盘分段(parity block),放在校验磁盘。这种方式可在不同的磁盘平行执行不同的读取命今,大幅提高磁盘阵列的读取性能;但写入数据时,因受限于校验磁盘,同一时间只能作一次,启动所有磁盘读取数据形成同一校验分段的所有数据分段,与要写入的数据做好校验计算再写入。即使如此,小型档案的写入仍然比RAID 3要快,因其校验计算较简单而非作位(bit level)的计算;但校验磁盘形成RAID 4的瓶颈,降低了性能,因有RAID 5而使得RAID 4较少使用。
RAID 5

RAID5避免了RAID 4的瓶颈,方法是不用校验磁盘而将校验数据以循环的方式放在每一个磁盘中,如下图:

磁盘0

 

磁盘1

 

磁盘2

 

磁盘3

 

磁盘4

P

B3-B4

D1-D2

E4-F0

 

A0-A1

P

D3-D4

F1-F2

 

A2-B3

C0-C1

P

F3-F4

 

A4-B0

C2-C3

B0-B1

P

 

B2-B2

C4-D0

B2-B3

G0-G1

磁盘阵列的第一个磁盘分段是校验值,第二个磁盘至后一个磁盘再折回第一个磁盘的分段是数据,然后第二个磁盘的分段是校验值,从第三个磁盘再折回第二个磁盘的分段是数据,以此类推,直到放完为止。图中的第一个parity block是由A0,A1...,B1,B2计算出来,第二个parity block是由B3,B4,...,C4,D0计算出来,也就是校验值是由各磁盘同一位置的分段的数据所计算出来。这种方式能大幅增加小档案的存取性能,不但可同时读取,甚至有可能同时执行多个写入的动作,如可写入数据到磁盘1而其parity block在磁盘2,同时写入数据到磁盘4而其parity block在磁盘1,这对联机交易处理(OLTP, on-line Transaction Processing)如银行系统、金融、股市等或大型数据库的处理提供了最佳的解决方案(solution),因为这些应用的每一笔数据量小,磁盘输出入频繁而且必须容错。

事实上RAID 5的性能并无如此理想,因为任何数据的修改,都要把同一parity block的所有数据读出来修改后,做完校验计算再写回去,也就是RMW cycle(Read-Modify-Write cycle,这个cycle没有包括校验计算);正因为牵一而动全身,所以:
R:N(
可同时读取所有磁盘)
W:1(
可同时写入磁盘数)
S:N-1(
利用率)

RAID 5的控制比较复杂,尤其是利用硬件对磁盘阵列的控制,因为这种方式的应用比其他的RAID level要掌握更多的事情,有更多的输出入需求,既要速度快,又要处理数据,计算校验值,做错误校正等,所以价格较高;其应用最好是OLTP,至于用于PC,不见得有最佳的性能。

3.RAID的对比:

下面几个表列是RAID的一些性质:

操作

工作模式

最少硬盘需求量

可用容量

RAID 0

磁盘延伸和数据分布

2

T

RAID 1

数据分布和镜像

2

T/2

RAID 2

共轴同步,并行传输,ECC

3

T*(n-1)/n

RAID 3

共轴同步,并行传输,Parity

3

T*(n-1)/n

RAID 4

数据分布,固定Parity

3

T*(n-1)/n

RAID 5

数据分布,分布Parity

3

T*(n-1)/n

RAID的性能与可用性:

RAID Level

用户数据利用率

Bandwidth Performance

Transaction
Performance

数据可用性

RAID 0

1

0.25

1

0.0005

RAID 1

0.5

0.25

0.85

1

RAID 2

0.67

1

0.25

0.9999

RAID 3

0.75

1

0.25

0.9999

RAID 4

0.75

0.25

0.61

0.9999

RAID 5

0.75

0.25

0.61

0.9999

以上数据基于4个磁盘,传输块大小1K75%的读概率,数据可用性的计算基于同样的损坏概率

4.RAID的概述:

RAID 0
没有任何额外的磁盘或空间作安全准备,所以一般人不重视它,这是误解,其实它有最好的效率及空间利用率,对于追求效率的应用,非常理想,可同时用其他的RAID level或其他的备份方式以补其不足,保护重要的数据。

RAID 1
有最佳的安全性,100%不停机,即使有一个磁盘损坏也能照常作业而不影向其效能(对能并行存取的系统稍有影响),因为数据是作重复储存。RAID1的并行读取几乎有RAID 0的性能,因为可同时读取相互镜像的磁盘;写入也只比RAID 0略逊,因为同时写入两个磁盘并没有增加多少工作。虽然RAID 1要增加一倍的磁盘做镜像,但作为采用磁盘阵列的进入点,它是最便宜的一个方案,是新设磁盘阵列的用户之最佳选择。

RAID 5
在不停机及容错的表现都很好,但如有磁盘故障,对性能的影响较大,大容量的快取内存有助于维持性能,但在OLTP的应用上,因为每一笔数据或记录(record)都很小,对磁盘的存取频繁,故有一定程度的影响。某一磁盘故障时,读取该磁盘的数据需把共用同一parity block的所有数据及校验值读出来,再把故障磁盘的数据计算出来;写入时,除了要重复读取的程序外,还要再做校验值的计算,然后再写入更新的数据及校验值;等换上新的磁盘,系统要计算整个磁盘阵列的数据以回复故障磁盘的数据,时间要很长,如系统的工作负载很重的话,有很多输出入的需求在排队等候时,会把系统的性能拉下来。但如使用硬件磁盘阵列的话,其性能就可以得到大幅度的改进,因为硬件磁盘阵列如DFTraid系列本身有内置的CPU与主机系统并行运作,所有存取磁盘的输出入工作都在磁盘阵列本身完成,不花费主机的时间,配合磁盘阵列的快取内存的使用,可以提高系统的整体性能,而优越的总线控制更能增加数据的传输速率,即使在磁盘故障的情况下,主机系统的性能也不会有明显的降低。RAID 5要做的事情太多,所以价格较贵,不适于小系统,但如果是大系统使用大的磁盘阵列的话,RAID 5却是最便宜的方案。

总而言之,RAID 0RAID 1最适合PC及图形工作站的用户,提供最佳的性能及最便宜的价格,所以RAID 0RAID 1多是使用IDE界面,以低成本符合PC市埸的需求。RAID 2RAID 3适用于大档案且输入输出需求不频繁的应用如影像处理及CAD/CAM;RAID 5则适用于银行、金融、股市、数据库等大型数据处理中心的OLTP应用;RAID 4RAID 5有相同的特性及应用方式,但有其先天的限制,所以并不受推荐。

5.磁盘阵列的额外容错功能:Spare or Standby driver

事实上容错功能已成为磁盘阵列最受青睐的特性,为了加强容错的功能以及使系统在磁盘故障的情况下能迅速的重建数据,以维持系统的性能,一般的磁盘阵列系统都可使用热备份(hot spare or hot standby driver)的功能,所谓热备份是在建立(configure)磁盘阵列系统的时候,将其中一磁盘指定为后备磁盘,此一磁盘在平常并不操作,但若阵列中某一磁盘发生故障时,磁盘阵列即以后备磁盘取代故障磁盘,并自动将故障磁盘的数据重建(rebuild)在后备磁盘之上,因为反应快速,加上快取内存减少了磁盘的存取,所以数据重建很快即可完成,对系统的性能影响不大。对于要求不停机的大型数据处理中心或控制中心而言,热备份更是一项重要的功能,因为可避免晚间或无人持守时发生磁盘故障所引起的种种不便。

另一个额外的容错功能是坏扇区转移(bad sector reassignment)。坏扇区是磁盘故障的主要原因,通常磁盘在读写时发生坏扇区的情况即表示此磁盘故障,不能再作读写,甚至有很多系统会因为不能完成读写的动作而死机,但若因为某一扇区的损坏而使工作不能完成或要更换磁盘,则使得系统性能大打折扣,而系统的维护成本也未免太高了。坏扇区转移是当磁盘阵列系统发现磁盘有坏扇区时,以另一空白且无故障的扇区取代该扇区,以延长磁盘的使用寿命,减少坏磁盘的发生率以及系统的维护成本。所以坏扇区转移功能使磁盘阵列具有更好的容错性,同时使整个系统有最好的成本效益比。其他如可外接电池备援磁盘阵列的快取内存,以避免突然断电时数据尚未写回磁盘而损失;或在RAID 1时作写入一致性的检查等,虽是小技术,但亦不可忽视。

6.硬件磁盘阵列还是软件磁盘阵列

市面上有所谓硬件磁盘阵列与软件磁盘阵列之分,因为软件磁盘阵列是使用一块SCSI卡与磁盘连接,一般用户误以为是硬件磁盘阵列。以上所述主要是针对硬件磁盘阵列,其与软件磁盘阵列有几个最大的区别:

l 一个完整的磁盘阵列硬件与系统相接。
l
内置CPU,与主机并行运作,所有的I/O都在磁盘阵列中完成,减轻主机的工作负载,增加系统整体性能。
l
有卓越的总线主控(bus mastering)DMA(Direct Memory Access)能力,加速数据的存取及传输性能。
l
与快取内存结合在一起,不但增加数据的存取及传输性能,更因减少对磁盘的存取而增加磁盘的寿命。
l
能充份利用硬件的特性,反应快速。

软件磁盘阵列是一个程序,在主机执行,透过一块SCSI卡与磁盘相接形成阵列,它最大的优点是便宜,因为没有硬件成本(包括研发、生产、维护等),SCSI卡很便宜(亦有的软件磁盘阵列使用指定的很贵的SCSI);它最大的缺点是使主机多了很多进程(process),增加了主机的负担,尤其是输出入需求量大的系统。目前市面上的磁盘阵列系统大部份是硬件磁盘阵列,软件磁盘阵列较少。


7.IDE磁盘阵列还是SCSI磁盘阵列

目前使用在磁盘输出入的界面主要有两种:

1. IDE (Integrated Drive Electronics)
是广泛使用在PC上的磁盘驱动器界面,一般而言,其传输速度从磁盘到磁盘缓冲器(medium to drive buffer)1.5-2.5MB/Sec,从缓冲器到界面(drive buffer to drive interface)4.0-6.0MB/Sec,而且新的设计其速率有大幅的改进,如增强型IDE界面(mode 4)PCI(Peripheral Component Interconnect)总线上的传输速率可达33MB/Sec

2. SCSI (Small Computer Standard Interface)
SCSI
是较高级(high level)的界面,可用于主机,磁盘,磁带,打印机等,因为是高阶的界面,规格较为复杂,一般自带控制器,也较为复杂,这就是SCSI磁盘为什么比IDE磁盘费的原因。但SCSI界面能较有效的利用硬件特性而提高其速度。其控制器还能对主机发给SCSI磁盘的命令进行缓冲、排队,并进行优化处理(命令队列)。现在较流行的是标准SCSI-2SCSI-3。有两种规格,FAST SCSI(SCSI-2)的同步传输速率为10MB/Sec,数据传输宽度为8 bit, WIDE SCSI的数据传输宽度可达16-bitUltra SCSI(SCSI-3)的同步传输速率为20MB/Sec,Ultra Wide SCSI的同步传输速率为40MB/Sec,数据传输宽度可达32-bitSCSI磁盘有虽有较高的传输速度,但受限于磁盘的存取速度及磁盘至SCSI界面的传输速度而不能充分发挥其性能(因为磁盘的机械动作难于有大幅度的改进);其命令分析程序(command phase)也较复杂。对单机来言,磁盘数量越多,主机找到特定的数据的时间越长,但对磁盘阵列来言,由于是多个磁盘一起并行处理,则表现为磁盘数量越多,速度越快。

以上界面的直接反应是单任务时IDESCSI,多任务时SCSI较快,这可从用IDE盘和SCSI盘做多用户、多任务的操作系统(UNIXWindows/NT)的系统盘时的启动时间的差别中明显看出。在单机时则不一定。我们看一个界面是否较快,不应只看其传崐输速度的高低而应就整个输入/输出的流程看,因为磁盘存取的机械动作比不上电脑的传输速率。IDE界面简单,反应快速,用于PC单机的小型的磁盘阵列其效果可能比SCSI为佳;但较大型的磁盘阵列就非SCSI界面莫属,因为阵列中的各个磁盘一起作存取的动作,能充分发挥SCSI的传输速率快及多工的特点。

此外IDE因为其配线规格的关系,不能作热插拔(hot swap),也就是不能在工作中带电插拔磁盘,而其线缆即使是增强型IDE也只有18,不能接在机箱之外,难于形成大的阵列,也就是只适用于PC低层次的用户。SCSI缆线在差分传输模式(differential transmission mode)下最大长度为25,单端传输模式(single-ended transmission mode)时最大长度为6,而一条SCSI总线可连接8台系统或各种不同的装置,扩充性很强,可形成很大的磁盘阵列空间;SCSI规格完备,容错能力很好,可带电插拔磁盘,是外接式装置无可取代的界面。

8. 磁盘阵列卡还是磁盘阵列控制器

磁盘阵列控制卡一般用于小系统,供单机使用。与主机共用电源,在关闭主机电源时存在丢失Cache中的数据的的危险。磁盘阵列控制卡只有常用总线方式的接口,其驱动程序与主机、主机所用的操作系统都有关系,有软、硬件兼容性问题并潜在地增加了系统的不安定因素。在更换磁盘阵列卡时要冒磁盘损坏,资料失落,随时停机的风险。

独立式磁盘阵列控制一般用于较大型系统,可分为两种:
单通道磁盘阵列和多通道式磁盘阵列,单通道磁盘阵列只能接一台主机,有很大的扩充限制。多通道磁盘阵列可接多个系统同时使用,以群集(cluster)的方式共用磁盘阵列,这使内接式阵列控制及单接式磁盘阵列无用武之地。DFT数据容错公司的DFTraid Rack MountDFTraid Tower等系统,都是独立形式的磁盘阵列子系统,其本身与主机系统的硬件及操作环境无关,只通过SCSI线缆与主机相接,主机把它当作一般的磁盘,所有的输出入动作都在磁盘阵列上完成,与主机的操作无关,所以可接任何可使用SCSI界面的主机。DFTraid Rack MountDFTraid Tower两系统最多可有六个SCSI通道,可同时连接5台主机;DFTraid 5000系列则有9个通道,可同时连接多达8台主机,使之一起共用磁盘阵列子系统。这种方式的磁盘阵列既可给单机使用,又可给群集多机使用,对用户对增加阵列中的磁盘数量限制较小,并可用于备援及并行的容错电脑系统,特别适合较大的系统用户,使这些用户可从封闭的环境中解放出来。

9. RAID5建立过程

第一步:

 

第二步:

 

 

 

 

 

 

 

第三步:

 

 

 

 

 

 

 

第四步:

 

 

 

 

 

第五步:

 

 

 

 

 

 

 

第六步:

 

 

 

 

 

 

 

第七步:

 

 

硬盘及磁盘阵列常用技术术语

 

硬盘的转速(Rotational Speed):也就是硬盘电机主轴的转速,转速是决定硬盘内部传输率的关键因素之一,它的快慢在很大程度上影响了硬盘的速度,同时转速的快慢也是区分硬盘档次的重要标志之一。 硬盘的主轴马达带动盘片高速旋转,产生浮力使磁头飘浮在盘片上方。要将所要存取资料的扇区带到磁头下方,转速越快,等待时间也就越短。因此转速在很大程度上决定了硬盘的速度。目前市场上常见的硬盘转速一般有5400rpm7200rpm、甚至10000rpm。理论上,转速越快越好。因为较高的转速可缩短硬盘的平均寻道时间和实际读写时间。可是转速越快发热量越大,不利于散热。现在的主流硬盘转速一般为7200rpm以上。
    
平均寻道时间(Average seek time):指硬盘在盘面上移动读写头至指定磁道寻找相应目标数据所用的时间,它描述硬盘读取数据的能力,单位为毫秒。当单碟片容量增大时,磁头的寻道动作和移动距离减少,从而使平均寻道时间减少,加快硬盘速度。目前市场上主流硬盘的平均寻道时间一般在9ms以下,大于10ms的硬盘属于较早的产品,一般不值得购买。
    
平均潜伏时间(Average latency time):指当磁头移动到数据所在的磁道后,然后等待所要的数据块继续转动到磁头下的时间,一般在2ms-6ms之间。
    
平均访问时间(Average access time):指磁头找到指定数据的平均时间,通常是平均寻道时间和平均潜伏时间之和。平均访问时间最能够代表硬盘找到某一数据所用的时间,越短的平均访问时间越好,一般在11ms-18ms之间。注意:现在不少硬盘广告之中所说的平均访问时间大部分都是用平均寻道时间所代替的。
    
突发数据传输率(Burst data transfer rate):指的是电脑通过数据总线从硬盘内部缓存区中所读取数据的最高速率。也叫外部数据传输率(External data transfer rate)。目前采用UDMA/66技术的硬盘的外部传输率已经达到了66.6MB/s
    
最大内部数据传输率(Internal data transfer rate):指磁头至硬盘缓存间的最大数据传输率,一般取决于硬盘的盘片转速和盘片数据线密度(指同一磁道上的数据间隔度)。也叫持续数据传输率(sustained transfer rate)。一般采用UDMA/66技术的硬盘的内部传输率也不过25-30MB/s,只有极少数产品超过30MB/s,由于内部数据传输率才是系统真正的瓶颈,因此大家在购买时要分清这两个概念。不过一般来讲,硬盘的转速相同时,单碟容量大的内
部传输率高;在单碟容量相同时,转速高的硬盘的内部传输率高。
 
自动检测分析及报告技术(Self-Monitoring Analysis and Report Technology,简称S.M.A.R.T): 现在出厂的硬盘基本上都支持S.M.A.R.T技术。这种技术可以对硬盘的磁头单元、盘片电机驱动系统、硬盘内部电路以及盘片表面媒介材料等进行监测,当S.M.A.R.T监测并分析出硬盘可能出现问题时会及时向用户报警以避免电脑数据受到损失。S.M.A.R.T技术必须在主板支持的前提下才能发生作用,而且S.M.A.R.T技术也不能保证能预报出所有可能发生的硬盘故障。
 
磁阻磁头技术MR(Magneto-Resistive Head)MR(MAGNETO-RESITIVEHEAD)即磁阻磁头的简称。MR技术可以更高的实际记录密度、记录数据,从而增加硬盘容量,提高数据吞吐率。目前的MR技术已有几代产品。MAXTOR的钻石三代/四代等均采用了最新的MR技术。磁阻磁头的工作原理是基于磁阻效应来工作的,其核心是一小片金属材料,其电阻随磁场变化而变化,虽然其变化率不足2%,但因为磁阻元件连着一个非常灵敏的放大器,所以可测出该微小的电阻变化。MR技术可使硬盘容量提高40%以上。GMR(GiantMagnetoresistive)巨磁阻磁头GMR磁头与MR磁头一样,是利用特殊材料的电阻值随磁场变化的原理来读取盘片上的数据,但是GMR磁头使用了磁阻效应更好的材料和多层薄膜结构,比MR磁头更为敏感,相同的磁场变化能引起更大的电阻值变化,从而可以实现更高的存储密度,现有的MR磁头能够达到的盘片密度为3Gbit-5Gbit/in2(千兆位每平方英寸),而GMR磁头可以达到10Gbit-40Gbit/in2以上。目前GMR磁头已经处于成熟推广期,在今后的数年中,它将会逐步取代MR磁头,成为最流行的磁头技术。
 
缓存:缓存是硬盘与外部总线交换数据的场所。硬盘的读数据的过程是将磁信号转化为电信号后,通过缓存一次次地填充与清空,再填充,再清空,一步步按照PCI总线的周期送出,可见,缓存的作用是相当重要的。在接口技术已经发展到一个相对成熟的阶段的时候,缓存的大小与速度是直接关系到硬盘的传输速度的重要因素。目前主流硬盘的缓存主要有512KB2MB等几种。其类型一般是EDO DRAMSDRAM,目前一般以SDRAM为主。根据写入方式的不同,有写通式和回写式两种。写通式在读硬盘数据时,系统先检查请求指令,看看所要的数据是否在缓存中,如果在的话就由缓存送出响应的数据,这个过程称为命中。这样系统就不必访问硬盘中的数据,由于SDRAM的速度比磁介质快很多,因此也就加快了数据传输的速度。回写式就是在写入硬盘数据时也在缓存中找,如果找到就由缓存就数据写入盘中,现
在的多数硬盘都是采用的回写式硬盘,这样就大大提高了性能。
 
连续无故障时间(MTBF):指硬盘从开始运行到出现故障的最长时间。一般硬盘的MTBF至少在3000040000小时。
 
部分响应完全匹配技术PRML(Partial Response Maximum Likelihood):它能使盘片存储更多的信息,同时可以有效地提高数据的读取和数据传输率。是当前应用于硬盘数据读取通道中的先进技术之一。PRML技术是将硬盘数据读取电路分成两段操作流水线,流水线第一段将磁头读取的信号进行数字化处理然后只选取部分标准信号移交第二段继续处理,第二段将所接收的信号与PRML芯片预置信号模型进行对比,然后选取差异最小的信号进行组合后输出以完成数据的读取过程。PRML技术可以降低硬盘读取数据的错误率,因此可以进一步提高磁盘数据密集度。
 
单磁道时间(Single track seek time):指磁头从一磁道转移至另一磁道所用的时间。
 
超级数字信号处理器(Ultra DSP)技术:应用Ultra DSP进行数学运算,其速度较一般CPU1050倍。采用Ultra DSP技术,单个的DSP芯片可以同时提供处理器及驱动接口的双重功能,以减少其它电子元件的使用,可大幅度地提高硬盘的速度和可靠性。接口技术可以极大地提高硬盘的最大外部传输率,最大的益处在于可以把数据从硬盘直接传输到主内存而不占用更多的CPU资源,提高系统性能。
 
硬盘表面温度:指硬盘工作时产生的温度使硬盘密封壳温度上升情况。硬盘工作时产生的温度过高将影响薄膜式磁头(包括MR磁头)的数据读取灵敏度,因此硬盘工作表面温度较低的硬盘有更好的数据读、写稳定性。
 
全程访问时间(Max full seek time):指磁头开始移动直到最后找到所需要的数据块所用的全部时间。
 
硬盘镜像(Disk Mirroring):硬盘镜像最简单的形式是,一个主机控制器带二个互为镜像的硬盘。数据同时写入二个硬盘,二个硬盘上的数据完全相同,因此一个硬盘故障时,另一个硬盘可提供数据。
 
硬盘数据跨盘(Disk Spanning:利用这种技术,几个硬盘看上去像一个大硬盘;这个虚拟盘可以把数据跨盘存储在不同的物理盘上,用户不需要关心哪个盘上存有他需要的数据
 
硬盘数据分段(Disk striping:数据分散存储在几个盘上。数据的第一段放在盘0,第2段放在盘1……直到达到硬盘链中的最后一个盘,然后下一个逻辑段放在硬盘0,再下一
个逻辑段放在盘1……如此循环直至完成写操作。
 
双控(Duplexing:这里指的是用二个控制器来驱动一个硬盘子系统。一个控制器发生故障,另一个控制器马上控制硬盘操作。此外,如果编写恰当的控制器软件,可实现不同的硬盘驱动器同时工作。
 
容错:(Fault Tolerant):具有容错功能的机器有抗故障的能力。例如RAID 1镜像系统是容错的,镜像盘中的一个出故障,硬盘子系统仍能正常工作。
 
主机控制器(Host Adapter:这里指的是使主机和外设进行数据交换的控制部件(如SCSI控制器)
 
热修复(Hot Fix:指用一个硬盘热备份来替换发生故障的硬盘。要注意故障盘并不是真正地被物理替换了。用作热备份的盘被加载上故障盘原来的数据,然后系统恢复工作。
 
热补(Hot Patch:具有硬盘热备份,可随时替换故障盘的系统。
 
热备份(Hot Spare:CPU系统电连接的硬盘,它能替换下系统中的故障盘。与冷备份的区别是,冷备份盘平时与机器不相连接,硬盘故障时才换下故障盘。
 
平均数据丢失时间(MTBDL – Mean Time Between Data Loss:发生数据丢失的事件间的平均时间。
 
平均无故障工作时间(MTBF – Mean Time Between Failure  MTIF):设备平均无故障运行时间。
 
廉价冗余磁盘阵列(RAID – Redundant Array of Inexpensive Drives:一种将多个廉价硬盘组合成快速,有容错功能的硬盘子系统的技术。
 
系统重建(Reconstruction or Rebuild:一个硬盘发生故障后,从其他正确的硬盘数据和奇偶信息恢复故障盘数据的过程。
 
恢复时间(Reconstruction Time:为故障盘重建数据所需要的时间。
 
单个大容量硬盘(SED – Singe Expensive Drive
 
传输速率(Transfer Rate:指在不同条件下存取数据的速度。
 
虚拟盘(Virtual Disk:与虚拟存储器类似,虚拟盘是一个概念盘,用户不必关心他的数据写在哪个物理盘上。虚拟盘一般跨越几个物理盘。但用户看到的只是一个盘。
 
热插拔(Hot Swap:指在不宕机制情况下,在线更换设备。
 DAS 
direct access storage device)直接访问存储设备
 NAS 
Network Attached Storage)网络附加存储设备
 SAN 
Storage Area Networks)存储区域网

 

 

 
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章