存储 频道

如何才能发挥NAND闪存的最大性能?

  全新的PCIe接口将让闪存发挥巨大潜力

  越来越多的固态硬盘供应商已经认识到这点,实现SSD性能提高的关键因素是将闪存靠近CPU。他们正研发使用主机PCIe端口的设备,以消除目前翻译层的局限。

  然而,现在一些设备的基础性能是通过将闪存放置在最初是为磁盘设计的SATA或SAS控制器下所获得的,这些协议和数据处理机制,并不适用于闪存,也没有对闪存做任何的优化,这就好像把一台高性能的汽车引擎安装在一辆已经有25个年头的老爷车上。

  同样的事情还发生在RAID控制器上,其最初的设计目的是为了聚合多个磁盘的性能,以避免单个磁盘故障所造成的数据丢失。对于传统的旋转媒质而言,RAID机制性能优越。但是,但这些机制并不能与NAND闪存相适应,因为其造成了太多的延迟。

  最好的方法就是将闪存放置在服务器内部,并采用PCIe接入,抛开传统的存储技术,使用一个新的、划时代的架构以给NAND闪存和主机内存提供一个最直接、最方便以及最低延迟的通道。

  请记住,CPU从来没有从存储系统中读取任何数据,这一切都必须首先通过系统内存。在一过程中,主机PCIe闪存设备像磁盘一样存储应用程序或数据库数据,但实际上,它们通过直接内存访问或DMA向系统内存提供数据。这样能有效保证数据存储与CPU处理处于最低延迟状态。

  通过让服务器CPU不受限制地访问闪存,主机PCIe可将应用程序和数据库的性能提升10倍以上。这种方法和其他固态产品之间最大的区别是明显改善了应用程序的吞吐量,而不只是媒质本身的性能。没有传统存储协议的服务器数据位置将使应用程序能够充分利用服务器的CPU,而不是强迫它们等待服务器的访问速度。如图3所示。

全新的PCIe接口将让闪存发挥巨大潜力
图3:主机PCIe NAND闪存给应用程序和数据库提供更低的延迟

  将闪存作为磁盘或高速缓存

  主机PCIe NAND闪存设备可用作磁盘驱动器或高速缓存设备。与传统的基于磁盘的系统相比,都有明显的性能优势。

  在磁盘模式下,NAND闪存PCIe设备可像传统磁盘一样存储数据,这是将整个数据集放置在一个或多个PCIe设备上的数据库的非常好的选择。NAND闪存PCIe设备可以聚合主机操作系统软件或内置卷管理功能,如Oracle的自动存储管理(ASM)。NAND闪存PCIe设备也可作为本地的大容量存储空间使用,其可在单个服务器内存储超过10TB的数据,充足的容量几乎涵盖了大部分市场。即使整个数据集不能存储在闪存中,大多数的数据库允许将诸如索引或“热”数据之类的活跃文件以手动的方式放置在一个特定的位置进行存储。

  在缓存模式下,PCIe NAND闪存可在不改变现有的外部存储基础设施前提下,缓存频繁存取的数据。对已部署的基于子系统的数据保护和恢复机制而言,这是最适合的选择。

  缓存每个服务器内的本地频繁存取数据以保证活跃数据的最大性能,并同时保留现有的数据存储。这种组合对于I/O密集型裸机或虚拟环境应用来说,是非常好的选择。在许多情况下,虚拟环境常常遭遇I/O性能不足,或者以极高的成本才能获得高I/O。在PCIe设备上缓存虚拟机频繁访问的数据可以缓解这种痛苦。

  闪存技术为提升企业应用程序和数据库速度带来了很多的好处。但如果只是将闪存当作一种新的磁盘驱动器的话,企业将不能发挥其潜在的性能。采用主机PCIe的方式,放弃传统的存储协议和关键位置过程数据以更贴近CPU,以最大限度减少延迟,实现闪存对企业的承诺。

0
相关文章