大量的 mongodb 动态集合对项目来说是一件坏事,并且对性能有影响吗

Posted

技术标签:

【中文标题】大量的 mongodb 动态集合对项目来说是一件坏事,并且对性能有影响吗【英文标题】:Is a lot of mongodb dynamic collections a bad thing for a project and have an effect on performance 【发布时间】:2019-11-04 20:51:17 【问题描述】:

我希望开始将 MongoDB 用于一个新项目。我遇到了计划问题,我相信如果存储在一起,我的收藏品会超过限制。在做了一些研究之后,我发现我可以做动态集合,但这最终也会产生大量的集合。这会对应用程序有长期问题还是 Mongo,可以有 X(x 可能是数千) 个集合,只要它们的大小很小

【问题讨论】:

【参考方案1】:

使用 Wired Tiger 存储引擎,您可以在 MongoDB 中创建的集合数量没有限制,除非您在 the resources 上遇到一些物理限制。

您创建的每个集合都会在磁盘上生成一个文件。 您创建的每个索引都会在磁盘上创建一个文件。

考虑到这些因素,您可能会受到打开文件的限制(尽管您可以通过垂直扩展资源来增加这些限制)。

如果估计的集合数不是太大。这种方法可能适合您。

阅读以下答案,了解有关上述方法优缺点的更多详细信息:

MongoDB performances - how many databases, collections?

【讨论】:

以上是关于大量的 mongodb 动态集合对项目来说是一件坏事,并且对性能有影响吗的主要内容,如果未能解决你的问题,请参考以下文章

Mongodb $lookup 动态集合

菜鸟的mongoDB学习---MongoDB 索引

使用spring boot将大量数据从一个集合复制到Mongodb中的另一个集合

向MongoDB中的现有集合添加具有大量行的新字段

Node.js Express+Mongodb 项目实战

带有大量文档的 MongoDb 聚合查找?