我需要对大量文件进行小的随机访问。我拥有足够的主内存来容纳所有数据。
当我将数据复制到临时的ramfs文件系统中并在那里处理它时,这只需要很少一部分等待磁盘访问所需的时间。
是否存在一种Linux文件系统,可以将其所有数据保存在主内存中,将任何更改写入支持磁盘,但从不读取磁盘?
如果没有,是否可以调整缓存以确保ext3缓存100%的数据和元数据?
我需要对大量文件进行小的随机访问。我拥有足够的主内存来容纳所有数据。
当我将数据复制到临时的ramfs文件系统中并在那里处理它时,这只需要很少一部分等待磁盘访问所需的时间。
是否存在一种Linux文件系统,可以将其所有数据保存在主内存中,将任何更改写入支持磁盘,但从不读取磁盘?
如果没有,是否可以调整缓存以确保ext3缓存100%的数据和元数据?
为什么不尝试在RAM磁盘和物理磁盘之间创建RAID镜像呢?
虽然不确定它是否有效率。如果镜像必须始终同步,那么当您写入时它将不得不等待磁盘,但对于读取,您应该会获得一些优势。 但是,对我来说,它看起来非常复杂,就像重新发明轮子的方形IO缓存:)
不过,这将是一个不错的实验。
看一下这个:
http://freecode.com/articles/virtual-filesystem-building-a-linux-filesystem-from-an-ordinary-file
你可以将文件挂载为一个文件系统到RAM磁盘中,然后备份它作为一个文件。
不确定你想要频繁备份,但是这是一个好的解决方案,可以一次性保存所有虚拟磁盘。