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

Blu*_*ies 1 namespaces mongodb

我正在阅读 MongoDB 的数据建模文档,并对命名空间集合有疑问。

他们给出的示例使用日志集合

{ log: "dev", ts: ..., info: ... }
{ log: "debug", ts: ..., info: ...}
Run Code Online (Sandbox Code Playgroud)

他们说

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

我想知道文档总数少是什么意思,但后来我找到了MongoDB 限制的文档,这很有意义。

所以我的问题是,如果命名空间集合有这些限制,那么使用它们而不是仅仅使用全新的集合(例如logs_devlogs_debug )有什么好处

谢谢你。

Joh*_*yHK 5

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

我相信引用的文档试图传达的是在像日志记录这样的用例中,您可以将所有相关文档放在一个集合中(其中文档由type示例中的字段区分),或者将它们放在单独的集合中集合。如果您确实将它们放在单独的集合中,请考虑使用命名空间样式的命名来帮助明确集合是松散相关的。