固态硬盘(SSD)让企业界非常兴奋,其主要原因在于其速度快。虽然SSD每GB的价格与普通硬盘(HDD)相比高得令人咂舌,但在某些情况下,SSD却要比HDD省钱。SSD有可能更适合那些需要用数量众多的HDD来提升存储系统总体I/O性能的场合。在许多情况下,仅一块SSD就能提供比一组企业级HDD快得多的速度,并以合理的价格提供足够的存储容量。
不过,企业级SSD的价格还是很贵,单价从数千美元到数十万美元不等。这阻碍了IT管理人员和原始设备制造商(OEM)想把SSD普遍用于数据中心的热情,促使他们考虑把数量很有限的SSD用到数据中心的什么地方最合适——是服务器里还是存储阵列?
SSD与HDD
动态随机存储器(DRAM)的性能与HDD的性能存在非常大的差距,这导致多年来需要弥补的差异日渐拉大。虽然企业级HDD位于图1中HDD椭圆形的顶端,但它提供了一种成本相对较高的方式来接近DRAM椭圆形的底端。因此,出现了基于闪存的SSD,这种经济高效的方式可弥补这个差距。
由于近年来NAND每GB的价格已降到低于DRAM,计算机设计人员一直在寻找有意义的方式来充分利用这项技术,以便在降低成本的同时可以改善计算机的性能。闪存SSD正是实现这个目标的一条途径。虽然NAND闪存的速度不及DRAM,但却超过HDD。NAND的价格比DRAM便宜,但比HDD来得贵。因而,这项技术适合弥补高容量HDD与DRAM之间的性能差距。
基于闪存的SSD对企业级HDD构成了重大威胁,许多OEM厂商和IT管理人员预计将来的系统会使用SSD(实现高速)结合低价格高容量的HDD(实现海量存储)来构建,从而跳过了原本可以在低价HDD与DRAM之间找到立足之地的企业级HDD。
最近,一批闪存SSD生产商推出了能满足服务器OEM厂商的需求、价格又让人满意的设备。它们目前的产品价格还很贵(单价超过3000美元),主要用来替换成本高昂的短行程(short-stroked)企业级HDD阵列(短行程这项技术是指,编程人员只使用HDD上的几个邻近磁道,忽略硬盘上的其余磁道,从而设法尽量减少HDD的磁头运动,进而尽量缩短访问时间。)
尽管短行程硬盘只访问一小部分可用磁盘空间,但从磁盘读取数据的速度却比平常快得多。可以采用这种方法,做到让几十IOPS的磁盘以几百IOPS的速度提供数据。在某些情况下,用户们觉得采用这种折衷方法是值得的。如今市面上的一个短行程系统使用53TB的HDD只能提供9TB的可用空间。
如今的企业级闪存SSD大多号称可提供几万IOPS,也就是说,速度比短行程HDD快100倍左右。固态硬盘的较高带宽,加上短行程HDD实际使用的非常小的容量,常常有望为SSD取代一组HDD提供机会。只要SSD的容量与短行程HDD中所用的容量一样大,只要SSD的带宽与HDD阵列的带宽相匹配,价格又不相上下,SSD就有望提供一种HDD阵列之外的更经济高效的选择。
DRAM固态硬盘
多年来,好几家公司一直在耕耘基于DRAM的固态硬盘市场。这个领域的巨头德州内存系统(Texas Memory Systems)公司早在1976年就推出了第一个SRAM SSD,此后不久又推出了DRAM SSD。Solid Data是另一家从事这个领域的厂商,甚至推出了小型模拟化SSD,专门用于高性能个人电脑游戏社区。很早进入这个领域的厂商还包括EMC和 Dataram,而Violin Memory则是最近涉及该领域的厂商,这家公司提供了一种独特的方法来集成DRAM层。
DRAM SSD提供了极高的性能,但有两个不利因素。首先也是最重要的是,由于使用DRAM,结果每GB的成本要高于服务器中的DRAM主内存。那么,为什么数据中心还要使用这种设备呢?那是因为设计这些硬盘的初衷就是为了添加比服务器硬件和软件所能支持的更多的DRAM。
其次,DRAM SSD具有易失的缺点,因而部署的系统必须为DRAM提供后备支持,以防断电。较旧的系统为DRAM提供后备支持的办法是在电池供电情况下将数据转移到HDD上; 现在的DRAM SSD使用多并行路径(若使用HDD方法,无法获得这些路径),将DRAM中的数据后备至NAND。这提供了非常快的备份和恢复速度,又大大节省了电力,减少了执行这项重要功能所需的电池容量。
DRAM SSD始终会在企业级系统中扮演重要角色。
数据中心中的固态硬盘
数据中心通常由装在独立机柜的服务器和存储系统构建而成,共享存储系统可解决很多问题,特别是当工作负载在服务器之间转移时,这是由于数据访问任务平均分配给了所有服务器。另一方面,直接安装到服务器中的存储系统越多,必须经过网络传送的存储请求数量就越少。
若使用速度更快的存储系统,网络两端都能得益。存储阵列逐渐使用“分层”存储,在这种环境下,存储阵列用不同速度级别和成本的存储设备来构建。SSD出现在存储阵列中后,一个新的层(称为第0层,Tier 0)将应用于这些设备上。SSD的优势在于,它已经很适合现有的管理模式,并且将存储阵列的性能带到了一个新的层面。戴尔公司将其存储层命名为“池”(pool),第1池由SSD组成,第2池由企业级HDD组成,以此类推。
加快存储阵列速度存在的一个困难是,从服务器到阵列的所有数据访问还是会受到网络延迟的影响;而在某些情况下,这种延迟令人无法接受。在这种情况下,数据中心的管理人员经常使用两种方法,一是添加DRAM高速缓存,从存储阵列复制数据;或者安装额外服务器,每一台服务器用来存储及操作一部分工作负载。但这两种方法都需要高昂的成本。
OEM厂商及其客户发现,如果为服务器添加SSD,就能减少对DRAM的需求,有时甚至减少所用服务器的数量。这不仅带来了尽量少占场地、节省电力/冷却成本的好处,还往往会带来另一个潜在的好处,即减少软件许可的成本,因为软件许可常常与处理器数量密切相关。
Sun公司很早就在其服务器中采用了SSD。最初用的是英特尔的SSD,后来推出了可以插入到服务器或专用固态存储板的开放标准SATA模块。这种模块基于供笔记本电脑DRAM使用的JEDEC标准SO-DIMM规格。Sun还宣布了其ZFS文件系统的升级版本,不需要管理员的干预,就能自动管理“热”数据和“冷”数据。
在过去几年中,大多数其他服务器OEM厂商在基于标准SATA SSD的系统中采用了SSD选件;而有些厂商更进一步添加了像Fusion-io公司的IOdrive这样的设备,因而需要对系统进行重新配置。不过,SATA SSD最常见,尽管它们的带宽受到SATA接口的限制。
两种方式共存?
直接连接的SSD存储系统在减少网络流量方面表现很出色,但影响数据共享。存储阵列中的SSD可以大幅度减少网络延迟,可数据传输仍会受制于网络开销。哪种选择最佳—这在很大程度上取决于工作负载的类型。
从长远来看,随着SSD日益普及(预计最快三年内会出现这一幕),许多数据中心会采用混合方法,把SSD同时添加到存储阵列和服务器中。两者可以共同减少网络流量,缩短响应时间,这样就能获得速度更快的系统,不但所用硬件成本更低、所占场地更小,耗电量也更少。
加州理工大学的Carver Mead教授所说的一番话很适合这种情况。他表示,网络通道所需要的带宽与网络两端的智能水平成反比。许多数据中心的管理人员会发现,若通过利用SSD来增加网络任何一端的智能,自己面临的挑战会从原来的网络延迟问题转移到计算瓶颈的其他部分。
特别声明:本站注明稿件来源为其他媒体的文/图等稿件均为转载稿,本站转载出于非商业性的教育和科研之目的,并不意味着赞同其观点或证实其内容的真实性。如转载稿涉及版权等问题,请作者在两周内速来电或来函联系。