闪存的损耗在VMware以及Hyper-V环境中备受关怀,类似于缓存和数据去重这样的技术将会对其持久性造成负面影响。
关于VMware和微软闪存工作的方式有一些问题需要讨论。闪存被认为是大有前途的技术,很多人认为他们可以在服务器中部署闪存充当缓存的角色。但殊不知闪存适合读,而并不适合写。你需要十分注意闪存的耗损,并充分利用其有限的寿命。虚拟存储厂商经常做的就是写聚集(write coalescence)。
闪存厂商会使用DRAM,这种介质抗耗损能力比较好。他们将所有的写操作都聚集于DRAM缓存,从而减少对闪存缓存的大量写操作。这保留了闪存的完整性并有效防止了闪存的耗损。VMware并没有使用任何的预缓存,相反,它派发来自所有工作负载的很多小的写操作——这将极大的破坏闪存卡并会导致其报销。
Hyper-V则体现出略微不同的闪存耗损问题。它在存储中应用数据去重,而对源文件执行写。原数据以很多小的写操作写入缓存,当Hyper-V在运行去重算法时,这些写操作又会二次破坏缓存。因此Hyper-V的闪存将比VMware耗损还要快。如此看来,两家厂商在闪存技术应用上都不是很有效率。并且,闪存卡的成本也并非无关紧要。
对比来看,Starwind软件似乎做的更好。DataCore也在做写聚集。所有其他的第三方、硬件或Hypervisor无关的厂商也都能很好的运用闪存。这也是它们同大厂商竞争的优势所在。