1.2.2 存储的磁盘技术
中高端存储目前已经能管理上千块磁盘,磁盘是存储最终存放数据的地方,是数据的载体。传统磁盘都是以磁碟作为存储介质,根据接口类型可以分为SCSI、光纤通道(fibre channel,FC)、串行连接SCSI(SAS)、串行ATA(SATA)。图1-6详细列举了不同接口磁盘的对比情况。
另外,闪存驱动器是新一代的磁盘设备,其内部由基于闪存技术的电子存储单元来代替磁碟作为存储介质(如图1-7所示)。闪存驱动器的革命性在于它的数据存取方式的根本变化。传统的磁盘驱动器需要通过旋转磁碟并摆动机械臂来读写数据,这是一个机械过程,而闪存驱动器采用电子寻址的方式对存储单元的数据进行读写,完全没有传统磁盘的机械寻址过程,很大程度提高了数据存储和写入的速度。闪存驱动器特别适合做在线事物处理(OLTP)等随机I/O繁多的应用。目前1块闪存驱动器提供的随机I/O处理性能相当于30个15000r/min的纤通道磁盘所能提供的处理能力。同时闪存驱动器不需要电力来驱动机械马达和机械臂,大大降低了能耗。
下面我们详细介绍各种磁盘接口技术的特点。
1. SCSI
小型计算机系统接口(small computer system interface,SCSI)是同IDE(ATA)完全不同的接口,IDE接口是普通PC的标准接口,而SCSI并不是专门为硬盘设计的接口,是一种广泛应用于小型机上的高速数据传输技术。SCSI接口具有应用范围广、多任务、CPU占用率低以及热插拔等优点,但较高的价格使得它很难如IDE硬盘般普及,因此在传统上SCSI硬盘主要应用于服务器和工作站中。
2. 光纤通道(FC)
光纤通道和SCSI接口一样,最初也不是为硬盘设计开发的接口技术,而是专门为网络系统设计的一种接口。随着存储系统对速度需求的不断提高,才逐渐应用到磁盘系统中。光纤通道磁盘是为提高多硬盘存储系统的速度和灵活性而开发的,它的出现大大提高了多硬盘系统的通信速度。光纤通道磁盘的主要特性有热插拔性、高速带宽、远程连接、连接设备数量大等。
光纤通道是为在像服务器这样的多硬盘系统环境而设计,能满足高端工作站,服务器,海量存储子网络,外设间通过集线器、交换机和点对点连接进行双向、串行数据通信等系统对高数据传输率的要求。
光纤通道可以采用铜轴电缆和光导纤维作为连接设备,大多采用光纤媒介,而传统的铜轴电缆如双绞线等则可以用于小规模的网络连接。但采用铜轴电缆的光纤通道有着铜媒介一样的老毛病,如传输距离短(30m,取决于具体的线缆)以及易受电磁干扰(EMI)等。
虽然铜媒介也适用于某些环境,但是对于利用光纤通道的较大规模存储网络来说,光缆是最佳的选择。光缆按其直径和模式分类,直径以μm为计量单位。电缆模式有两种: 单模是一次传送一个单一的信号; 而多模则能够通过将信号在光缆玻璃内核壁上不断反射而传送多个信号。现在认可的光缆光纤通道标准和等级有: 直径62.5μm多模光缆175m,直径50μm多模光缆500m,以及直径9μm单模光缆10km。
目前主流的FC磁盘已经能提供4Gb/s的传输速度,未来的速度还将达到8Gb/s。不过为了能得到更高的数据传输率,市面上的光纤产品有时是使用多个光纤通道来达到更高的带宽。
光纤通道有如下诸多优点:
连接设备多,一个通路上最多可连接126个设备,并很容易通过交换设备扩展;
低CPU占用率;
支持热插拔,在主机系统运行时就可安装或拆除光纤通道硬盘;
可实现光纤和铜缆的连接;
高带宽,在适宜的环境下,光纤通道是现有产品中速度最快的;
通用性强;
连接距离大,连接距离远远超出其他同类产品;
光纤通道的缺点在于产品价格昂贵,组建较为复杂。
3. SAS
SAS(serial attached SCSI)即串行连接SCSI,是新一代的SCSI技术。SAS与现在流行的SATA(serial ATA)硬盘相同,都是采用串行技术以获得更高的传输速度,并通过缩短连接线改善内部传输率。SAS是并行SCSI接口之后开发出的全新接口。此接口的设计是为了改善存储系统的效能、可用性和扩充性,并且提供与SATA硬盘的兼容性。
SAS的接口技术可以向下兼容SATA。具体来说,二者的兼容性主要体现在物理层和协议层的兼容。在物理层,SAS接口和SATA接口完全兼容,SATA硬盘可以直接使用在SAS的环境中。从接口标准而言,SATA是SAS的一个子标准,因此SAS控制器可以直接操控SATA硬盘,但是SAS却不能直接在SATA的环境中使用,因为SATA控制器并不能对SAS硬盘进行控制。在协议层,SAS由3种类型协议组成,根据连接的不同设备使用相应的协议进行数据传输。其中串行SCSI协议(SSP)用于传输SCSI命令; SCSI管理协议(SMP)用于对连接设备的维护和管理; SATA通道协议(STP)用于SAS和SATA之间数据的传输。因此在这3种协议的配合下,SAS可以和SATA以及部分SCSI设备无缝结合。
SAS系统的背板既可以连接具有双端口、高性能的SAS驱动器,也可以连接高容量、低成本的SATA驱动器,所以SAS驱动器和SATA驱动器可以同时存在于一个存储系统之中。但需要注意的是,SATA系统并不兼容SAS,所以SAS驱动器不能连接到SATA背板上。由于SAS系统的兼容性,使用户能够运用不同接口的硬盘来满足各类应用在容量上或效能上的需求,因此在扩充存储系统时拥有更多的弹性,让存储设备发挥最大的投资效益。
每一个SAS端口最多可以连接16256个外部设备,并且SAS采取直接的点到点的串行传输方式,传输的速率高达3Gb/s,估计以后会有6Gb/s乃至12Gb/s的高速接口出现。SAS的接口也做了较大的改进,它同时提供了3.5in和2.5in的接口,因此能够适合不同服务器环境的需求。SAS依靠SAS扩展器来连接更多的设备,目前的扩展器以12端口居多,不过根据板卡厂商产品研发计划显示,未来会有28、36端口的扩展器引入,来连接SAS设备、主机设备或者其他的SAS扩展器。
和传统并行SCSI接口比较起来,SAS在接口速度上得到显著提升(现在主流Ultra 320 SCSI速度为320MB/s,而SAS才刚起步速度就达到300MB/s,未来会达到600MB/s甚至更多),而且由于采用了串行线缆,不仅可以实现更长的连接距离,还能够提高抗干扰能力,并且这种细细的线缆还可以显著改善机箱内部的散热情况。
SAS目前的不足主要有以下方面。
硬盘和控制芯片种类少。目前只有希捷和富士通等为数不多的硬盘厂商推出了SAS接口硬盘,品种太少,其他厂商的SAS硬盘多数处在产品内部测试阶段。另外周边的SAS控制器芯片或者一些SAS转接卡的种类更是不多,多数集中在LSI以及Adaptec公司手中。
硬盘价格太贵。比起同容量的Ultra 320 SCSI硬盘,SAS硬盘要贵1倍还多。一直居高不下的价格直接影响了用户的采购数量和渠道的消化数量,而无法形成大批量生产的SAS 硬盘,其成本的压力又会反过来促使价格无法下降。如果用户想要做个简单的RAID级别,那么不仅需要购买多块SAS硬盘,还要购买昂贵的RAID卡,其总体价格基本上和光纤硬盘相当。
实际传输速度变化不大。SAS硬盘的接口速度并不代表数据传输速度,受到硬盘机械结构限制,现在SAS硬盘的机械结构和SCSI硬盘几乎一样。目前数据传输的瓶颈集中在由硬盘内部机械机构和硬盘存储技术、磁盘转速所决定的硬盘内部数据传输速度,也就是80MB/s左右,SAS硬盘的性能提升不明显。
用户追求成熟、稳定的产品。从现在已经推出的产品来看,SAS硬盘更多地被应用在高端4路服务器上,而4路以上服务器用户并非一味追求高速度的硬盘接口技术,最吸引他们的应该是成熟、稳定的硬件产品,虽然SAS接口服务器和SCSI接口产品在速度、稳定性上差不多,但目前的技术和产品都还不够成熟。
不过随着英特尔等主板芯片组制造商、希捷等硬盘制造商以及众多的服务器制造商的大力推动,SAS的相关产品技术会逐步成熟,价格也会逐步滑落,将来会成为服务器硬盘和存储阵列的主流接口。
4. SATA
SATA是Intel公司在IDF2000大会上推出的,该技术可以让用户拥有高效能的硬盘,却不必牺牲数据的完整性。SATA最大的优势是传输速率高。SATA的工作原理非常简单: 采用连续串行的方式来实现数据传输从而获得较高传输速率。2003年发布SATA1.0规格提供的传输率就已经达到了150MB/s,不但已经高出普通IDE硬盘所提供的100MB/s(ATA100),甚至超过了133MB/s(ATA133)的最高传输速率。
SATA在数据可靠性方面也有了大幅度提高。SATA可同时对指令及数据封包进行循环冗余校验(CRC),不仅可检测出所有单bit和双bit的错误,而且还能根据统计学的原理,检测出99.998%可能出现的错误。相比之下,PATA只能对来回传输的数据进行校验,而无法对指令进行校验,加之高频率下干扰甚大,因此数据传输稳定性很差。
除了传输速度、传输数据更可靠外,节省空间是SATA最具吸引力之处,同时SATA更有利于机箱内部的散热,并使线缆间的串扰得到了有效控制。不过SATA1.0规范存在不少缺点,特别是缺乏对于服务器和网络存储应用所需的一些先进特性的支持。比如在多任务、多请求的典型服务器环境里面,SATA1.0硬盘的确会有性能大幅度下降、可维护性不强、可连接性不好等缺点。这时,SATA2.0的出现在这方面得到了很好的补充。
在SATA2.0扩展规范中,3Gb/s被提到的频率最高。由于SATA使用8bit/10bit编码,所以3Gb/s等同于300MB/s的接口速率。不过,从性能角度看,3Gb/s并不能带来多大的提升,即便是RAID应用的场合,性能提升也没有想像的那么大。因为硬盘内部传输速率还达不到与接口速率等同的程度,而且接口速率的影响也不是很大,在大多数应用中硬盘是将更多的时间花在寻道上,而不是传输上。接口速率的提高直接影响到的是从缓存进行读写的操作,所以理论上大缓存的产品会从3Gb/s上得到更大的好处。从现有情况来看,相信3Gb/s的普及速度会加快,不过市场目前仍会存在一个1.5Gb/s和3Gb/s的共存期。
SATA硬盘的速度虽然没有前面提到FC和SAS接口的速度快,但是能以很低价格提供大量的存储空间。目前在主流存储阵列中已经广泛采用SATA2.0技术的硬盘,硬盘的容量最高可达1TB。