在任何一台服务器中增加SSD闪存多多少少都可以提升其整体性能。当某台计算机运行所需的各类数据都保存在RAM或闪存中时,处理器可以以峰值效能进行运算。
通常来讲,通过增加RAM和闪存的大小可以增加数据驻留在其中,可以被立即访问到的几率。但迟早还是需要从存储子系统中获取没有驻留在RAM和闪存中的数据。
即便配置了再多的SSD闪存,所需的数据刚巧驻留在闪存仍要一定的运气。为了达到改善性能的目的,可以通过智能化软件来增加需要的数据在闪存中的机会。SSD软件产品通过应用复杂精细的算法检测出哪些数据属于“热点”数据,将其从硬盘系统中迁移到闪存中,并确保数据驻留在其中,直到有更热的数据出现。这种软件一般都安装在主机上。
SSD软件供应商通常都宣称这种方式较单纯地使用SSD闪存,可以提升5到10倍的性能。这类产品号称易于部署和使用,并且和硬件无关。除了这些,各类产品还有很多差异化的地方。
有些产品从本质上看可以称之为通用类的产品,比如FlashSoft的FlashSoft SE产品(现在被SanDisk所收购)。FlashSoft SE基于访问模式选择热点数据。这和Nevex的Cache Works“选择性的优化闪存”正好相反,这种方式基于数据的“流行程度”而非最近存取次数来选择热点数据。也就是说,被访问过上千次的数据可能还不如只被访问过几次的“热”,只要后者在最近被访问过。Velobit的HyperCache更近一步地推出基于数据块的闪存算法。一些数据块可能在几份文件中都一样,HyperCache会只选择这部分数据块作为热点数据而非整个文件。
所有这些针对SSD读操作的技术改进,对于写操作都效果不佳。Velobit通过压缩技术和数据块级别的缓存,以及允许用户设置写操作的阈值来最小化写操作的次数。FlashSoft使用“循环缓冲设计”来提供缓存持续性地写入。
由于大量数据存放在SSD闪存上,故障切换和数据一致性保证非常重要。这些问题再虚拟机故障切换,缓存重构等情况下会变得尤其复杂。对于IT用户,确保其将厂商产品的各项功能应用于数据故障切换的体系架构非常重要。
在SSD软件设计背后的驱动力源自实际使用案例。用户案例决定了产品设计期间的各类假设。通过厂商在其主页提供用户案例,并将其和自身情况进行关联可以有助于选择合适的产品,或至少创建一份短名单。
需要更好处理性能和中断I/O争用的用户在评估使用SSD软件产品时可能会遇到困难,这时可以使用以下检查列表:
1.从最基础的开始。判断哪类产品可以支持你的环境,这包括Windows、Hypervisor或Linux。
2.了解你应用环境的复杂性。假设大量的写操作发生,致力于优化写性能的产品可能更为适合。
3.检查用户案例。判断哪家厂商的产品可以支持你希望部署的方式。
4.综合考虑数据一致性。了解你所感兴趣的产品在管理数据一致性和故障切换方面的功能,以确保其能够满足你的服务水平协议。
5.在购买前先进行尝试。大多数厂商提供可以下载的试用版,没有什么比试用以后更有说服力的了。你可以了解许多关于产品是否易于使用,性能和技术支持方面的情况。
大多数SSD软件对于SSD硬件无关,但并不是所有的,因此确保检查下产品的兼容性。