B.5 内存映射存储引擎
MongoDB默认的(也是此书写作时唯一支持的)存储引擎,是一个内存映射引擎。服务器启动时,其内存对所有数据文件进行映射。接下来就由操作系统负责将数据刷新到磁盘,以及管理内存中的数据页交换。该存储引擎有以下几个重要特性:
- MongoDB中负责管理内存的代码数量少且干净,因为大部分相关工作已交由操作系统解决;
- MongoDB服务器进程占用的虚拟内存通常很大,超过整个数据集的大小。这是可以接受的,因为操作系统会处理内存中的常驻内存大小;
- 32位的MongoDB服务器在使用内存方面有所限制,每个mongod最多只能使用约2 GB内存。这是因为所有的数据都必须是在32位下可寻址的。