MongoDB的RAM中有多少空间视图



我必须在mongodb v3.4.1中使用视图(mongodb经常升级到最新版本)。

我有两种选择来创建最终视图。

  1. 我可以直接创建一个复杂的视图。在这种情况下,我应该只创建一个视图。
  2. 我可以创建3个视图。其中的前两个需要达到第三个终极视图。在这种情况下,视图将更可读,容易控制。

但是,视图将通过使用大量集合来创建。

由于上述情况,我想知道RAM中的视图占据了多少空间。它与集合或更少的收藏吗?

除了用于定义视图的少量元数据外,它们本身不会消耗任何记忆。

当您在视图上执行查询时,它将获取相关的集合数据,并且又可能需要存储引擎将更多数据带入RAM,如果所讨论的数据仅在磁盘直到那时。

// Example view creation
db.runCommand ( {
   create: "managementFeedback",
   viewOn: "survey",
   pipeline: [ { $project: { "management": "$feedback.management", department: 1 } } ]
} )
// ---------
db.managementFeedback.find() //Will bring a certain amount of document data into memory, if it wasn't already there.
db.survey.aggregate([ { $project: { "management": "$feedback.management", department: 1 } } ]) //Will bring exactly the same document data into memory

,但这一切都是预期的。使用视图不比使用同一管道运行聚合命令的内存耗费或多或少。

最新更新