什么将MongoDb映射到内存

什么将MongoDb映射到内存,mongodb,Mongodb,MongoDbmmap是否在启动时将所有内容(即所有数据文件+所有索引)都映射到内存中 若数据库有100GB,而机器只有4GB RAM,MongoDb会将整个数据库映射到内存中,对吗?MongoDb会对所有数据使用内存映射文件。有关其工作原理,请参阅以下文档: 如果数据库有100GB,而机器只有4GB RAM,MongoDb仍然会将整个数据库映射到内存中?您最好为活动工作集设置足够的RAM。这通常小于数据库的总大小。通过从mongo控制台执行db.stats(),可以找到索引的大小和数据大

MongoDb
mmap
是否在启动时将所有内容(即所有数据文件+所有索引)都映射到内存中


若数据库有100GB,而机器只有4GB RAM,MongoDb会将整个数据库映射到内存中,对吗?

MongoDb会对所有数据使用内存映射文件。有关其工作原理,请参阅以下文档:


如果数据库有100GB,而机器只有4GB RAM,MongoDb仍然会将整个数据库映射到内存中?您最好为活动工作集设置足够的RAM。这通常小于数据库的总大小。通过从mongo控制台执行
db.stats()
,可以找到索引的大小和数据大小。如果您的数据集比可用内存大,那么MongoDB在将常用访问的数据优先排序到RAM中仍然非常聪明。如果您的工作集比内存大得多,并且MongoDB经常到磁盘进行读取(而不仅仅是同步写入磁盘时的正常峰值),然后,您真的应该进行分片,以便将数据分散到多台计算机/实例上。它将文件映射到虚拟内存中。不是物理内存。