我一直在考虑加快磁盘I/O速度的方法,而我一直提到的瓶颈之一就是日志。除了只需写缓存之外,使用SSD对日志有明显的好处,除非我只是使用写缓存禁用日志(毕竟,devicemapper似乎不支持障碍)。为了从控制器上使用BB写缓存中获得好处,我需要禁用日志,但是操作系统应该在中断后尝试伪造系统。当然,如果操作系统知道备份内存中的内容,那么它就可以使用它作为日志,但这意味着它必须作为块设备公开,并且只受操作系统的控制。
然而,我还没有找到一个合适的低成本设备(不,对于一本日志,至少一个使用Smartmedia的日志来说,Flash的写级是不够的)。
虽然闪存设备、带有BB写缓存的磁盘/阵列控制器还没有结束,但到目前为止,我还没有找到任何可以作为块存储设备寻址的非易失性内存。
发布于 2012-06-22 08:55:49
到目前为止,唯一的答案是来自Nils -但据我的评论,有iRAM和超级驱动器设备。所以我会把这个关了
发布于 2012-06-22 09:20:22
你能解释一下为什么在期刊上使用SSD有明显的优势吗?所有FS都将日志实现为某种环形缓冲区,访问无论如何都是顺序的。只要禁用BBWCs上的障碍,它就会变得尽可能好。
EXT3和EXT4文件系统用于以“有序”模式挂载日记。在较新的内核中,默认的模式是“写回”模式。在“有序”模式中,日志更新在写入任何数据之前提交到磁盘。在“写回”模式下,日志更新按照正常的IO调度器策略写入磁盘,日志更新时不阻止对磁盘的数据写入。你根本看不出性能POV里面有一本日记。
您想要的是在任何可以通过电池保护您写的东西上禁用屏障(可能还可以屏蔽FUA和SCSI_CACHE_SYNCHRONIZE SCSI ),否则您的性能就会受到影响。通过使用BBWC,您可以在日志和数据上获得障碍的语义(或任何刷新到磁盘并等待确认的内容)。
如果没有操作系统(VFS)的适当支持,NVRAM将无法帮助您解决BBWC (这是某种NVRAM )无法解决的问题。在Linux2.4中,支持某些NVRAM设备加速同步运行的NFSv2 2/3,但是BBWCs已经使它们过时了。
对于闪存设备来说,正确的做法是不要把它们看作是块设备,而是把它们当作是什么- NAND闪存。但这需要重新设计我们认为文件系统应该如何以一种更通用的方式与底层存储进行对话。内核中也没有适当的API来使用NAND闪存。
发布于 2012-02-28 20:19:02
SSD驱动器不应用于频繁的写操作。为什么不简单地将日志放在一个单独的防故障RAID系统(5或10)上,包括普通磁盘(至少4张“小”磁盘)?
https://serverfault.com/questions/357193
复制相似问题