过去一年,由于闪存对传统媒介有绝对优势,闪存记忆体的流行性大爆发。不过,经常没有弄清楚的是一个闪存产品与另一个闪存产品之间的区别。下面是对四个常见的闪存设计实施的分析,它们各有自己的优点和缺点。
第一种方法,将PCIe闪存记忆体卡用于服务器并配上将闪存视为系统记忆体扩展的软件。对于那些依赖于高性能数据库访问并且低延迟性非常重要的应用程序,它们可以从这种卡的使用中受益。
鉴于对高性能的需要,数据基本上被作为块迁移到更加接近于应用程序。与传统的磁盘I/O相比,延迟性远远更低,而单位IOPS(每秒输入输出)成本也很低。由于NFS(网络文件系统)并不是数据访问的主要协议,倾向于这种部署方式的客户主要是SAN(存储局域网)思维并对延迟性非常敏感的人。
首先是这种方法的缺点,它不是一个共享式存储模式。受益的服务器必须装上闪存卡。其次,它消耗大量的CPU资源因为损耗均衡和算法需要大量的处理器资源。第三,对于一些客户而言,使用PCIe插槽是个问题。在配置服务器的时候,所有这些因素都必须考虑进去,确保有充足的处理器和PCIe插槽支持。
第二种设计方式是利用纯闪存记忆体来构建存储阵列。这些阵列构成的共享式存储目标端,而它们经常是在一个SAN内。你不会购买这些系统来加速或代替NAS(网络附加存储),不过你可以加入对NFS高速闪存的支持,只要闪存记忆体阵列就在NFS网关服务器旁边。加入这样的网关所带来的延迟性使得它在性能敏感型环境中的理想性有点下降。由于大厂商在延迟敏感型环境(比如金融市场)上的努力,纯SAN模式取代传统存储的步伐在加快。
尽管裸性能很好,但是存储管理工具有点跟不上。这些系统的一个主要缺点就是存储阵列的处理器使用率。这有可能会成为限制可扩展性的瓶颈。一旦处理器利用率达到100%,无论再安装多少闪存记忆体,系统也无法再产生更多的I/O。更好的方法是将闪存应用于需要它的数据并在不需要闪存的数据上使用更廉价的媒介。旧数据和不重要的数据不需要和热数据一样的IOPS。