MMAP

MMAP 是一个可插拔的存储引擎,以 mmap() Linux 命令命名。它将文件映射到虚拟内存并优化读取调用。如果你有一个大文件,但只需要读取它的一小部分,mmap()read() 调用要快得多,这会将整个文件带到内存中。

一个缺点是你不能为同一个集合并行处理两个写入调用。因此,MMAP 具有集合级锁定(而不是 WiredTiger 提供的文档级锁定)。这种集合锁定是必要的,因为一个 MMAP 索引可以引用多个文档,如果这些文档可以同时更新,则索引将不一致。