【问题标题】:Is mongodb "_id" index always kept in cache?mongodb“_id”索引是否始终保存在缓存中?
【发布时间】:2020-04-01 18:27:37
【问题描述】:

我有一个 mongodb 数据库,它有多个集合。还有一个额外的集合,它更像是系统中发生的所有事件的日志。我想知道,当我有一个很少使用的大型集合时,该集合的“_id”索引是否也在该集合上没有发生任何操作时放入 RAM 中?或者它只是在磁盘上等待,直到执行读取操作。 我主要担心这个集合的大小是否会影响其他查询的性能(由于集合的大小比可用 RAM 大几倍)。

【问题讨论】:

    标签: mongodb mongodb-indexes


    【解决方案1】:

    它们将被替换为 LRU basis

    索引不必在所有情况下都完全适合 RAM。如果索引字段的值随着每次插入而增加,并且大多数查询选择最近添加的文档;那么 MongoDB 只需将索引中包含最新或“最右边”值的部分保留在 RAM 中。

    为确保此索引适合 RAM,您不仅必须拥有更多可用 RAM,而且还必须为 working set 的其余部分提供可用 RAM。 索引和工作集必须能够同时放入内存。

    https://docs.mongodb.com/manual/tutorial/ensure-indexes-fit-ram/#indexing-right-handed

    【讨论】:

      猜你喜欢
      • 2016-05-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-09-09
      • 2015-08-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多