命名空间集合与单独集合的优势

时间:2013-10-08 22:40:29

标签: mongodb namespaces

我正在阅读MongoDB的data modeling文档,并对命名空间集合有疑问。

他们提供的示例使用日志集合

{ log: "dev", ts: ..., info: ... }
{ log: "debug", ts: ..., info: ...}

他们说

  

如果文档总数不足 ,您可以按类型将文档分组。对于日志,请考虑维护不同的日志集合,例如 logs.dev logs.debug 。 logs.dev集合仅包含与开发环境相关的文档。

我想知道他们对低文档总数的意义,但后来我找到了 MongoDB限制的文档,这使得它有意义。

所以我的问题是,如果命名空间集合存在这些限制,那么使用它们而不仅仅使用全新的集合有什么好处,比如 logs_dev logs_debug

谢谢。

1 个答案:

答案 0 :(得分:4)

包含.的集合名称没什么特别之处;名为logs_devlogs_debug的集合与名为logs.devlogs.debug的集合的行为相同。它们都是完全独立的系列。

我认为所引用的文档是尝试传达的是一个用例,例如日志记录,您可以将所有相关文档放在一个集合中(文档由类似字段区分)示例中为type,或将它们放在单独的集合中。如果你把它们放在不同的集合中,可以考虑使用命名空间式命名来帮助清楚地表明集合是松散相关的。

相关问题