从使用Solid State驱动器和raid的情况来看,我已经能够理解的问题是,在configurationRAID时,TRIM不能用于他们,因此导致磁盘在删除文件时变慢。
我目前正在考虑的一个用例是使用SSD:在一个raid存储数据库没有删除,只是读写操作执行。
这样做是否会绕过运行突袭SSD时不能使用TRIM的常见问题,或者其他(据说与数据库如何pipe理数据)表面有关?
更新:值得一提的是,为什么我开始考虑这样做的可行性是因为这些堆栈交换站点似乎一直在使用SSD存储一段时间( http://blog.serverfault.com/ post / our-storage-decision / )
与传统磁盘相比,无论TRIM给定随机而非顺序模式(最终IO活动似乎总是随机的),每IO的美元将会好得多。 虽然写入重度环境结合固态硬盘和TRIM支持是一个问题,我认为这是一个红鲱鱼。 我会把你的注意力转移到可靠性。 这是因为在写入之前发生的大量SSD故障(从我所见过的情况来看)都应该是杀死驱动器。 这可能是固件边缘的情况下,与芯片的问题。 例如,最近:

你可以在这个话题上和SSD和存储专家一起讨论几天,但究竟是SSD还是一个相对较新的技术 – 不是出血性的,而是新的。 这个技术正在快速发展,这意味着在故障率方面确实没有太多的数据。 有数据的时候,你已经在下一代了。 还有一些堆栈的其他部分,如文件系统和磁盘调度器,在SSD方面可能还不完善。
Tom's Hardware 在SSD可靠性方面做了相当不错的研究 ,结论是:
“我们现在可以得出的唯一明确的结论是,你应该从SSD供应商那里得到可靠的声明。
所以大多数人所做的只是猜测。
这意味着SSD是勇敢的,如果你不能使用存储在超暴力或噩梦! 模式,你应该保持可能留在磁盘。 与往常一样,技术应该反映业务 – 在Stack Exchange,我们使用固态硬盘,因为我们是性能的瘾君子,不需要全球银行的正常运行时间/风险缓解。 所以,如果你决定使用它们,这对系统pipe理员意味着什么?
最后只要意识到你正在进入,并准备好。 性能将踢我的经验,无论是否修剪。 由于我们在博客文章(Raid 10 6个磁盘)的时候在我们的数据库服务器上安装了这些SSD,因此无TRIM和100-800 Transfer / s时的性能如下:


请记住,现有数据的更新也在SSD层有效“删除”。 一个新的块需要由闪存翻译层写入,旧的垃圾收集。 您的应用程序是否更新现有的数据? (如果你正在运行一个数据库,甚至简单地插入索引表也会更新一个或多个B树索引页!)
我build议select为高写入工作负载devise的固态硬盘,比如英特尔510系列,或者更好(更昂贵)的新系列710 。 我会远离基于SLC的固态硬盘,只是基于极端的成本,远离桌面型“廉价”固态硬盘,因为他们没有太多的写保留(也经常有错误的控制器和固件)。
如果你有钱的话,即使是由于没有TRIM维护而造成SSD性能下降,也应该胜过普通硬盘,到时候这将是一个真正的问题,当你需要重新启动时,你应该已经接近硬件的周期了无论如何,升级服务器/硬件。
在某些情况下,@ChrisS表示,由于RAIDarrays中的磨损/故障,您最终将会更换一些驱动器,因此无论如何您都会因为缺乏TRIM维护而遇到问题。
如果TPTB愿意为SSD硬盘提供超快速的RAID服务器,那么就去做吧,为了维护/更换,我们会适当地进行预算。 在networkingI / O瓶颈和CPU瓶颈计算出来之后,我不认为有百分之几的降级是显而易见的,整体性能提升仍然会比其他方式更大。