如何查找索引是在RAM还是磁盘[MongoDB]?

Aru*_*ala 6 database indexing mongodb

什么是查找mongodb中驻留在RAM或磁盘中的索引的最佳方法?

chx*_*chx 5

一方面,完全有可能只有索引的某些部分在 RAM 中http://docs.mongodb.org/manual/applications/indexes/#indexing-right-handed

索引不必在所有情况下都完全适合 RAM。如果索引字段的值随着每次插入而增长,并且大多数查询选择最近添加的文档;那么 MongoDB 只需要在 RAM 中保留索引中包含最新或“最右边”值的部分。这允许有效地使用索引进行读写操作,并最大限度地减少支持索引所需的 RAM 量。

另一方面,db.serverStatus()为您提供所需信息的汇总。检查http://docs.mongodb.org/manual/reference/server-status/#server-status-indexcounters

indexCounters.btree.hits值反映了索引被访问的次数,并且 mongod 能够从内存中返回索引。