我应该在MongoDB中使用不同的数据库或只是不同的集合来存储用户信息和数据库的其余部分吗?

时间:2016-10-11 20:58:43

标签: mongodb database

我是MongoDB的新手。我正在创建一个应用程序,我将拥有用户和许多其他数据。我已经创建了一个数据库,我使用MongoDB存储用户信息。现在我必须创建一个新的数据库或集合来存储其余的数据。创建不同或不同的集合有哪些优缺点?

1 个答案:

答案 0 :(得分:1)

我以非常类似的方式使用MongoDB,并且已经考虑过很多关于划分数据库的事情。以下是我们考虑的一些事项:

  • 使用2个数据库更难维护,您的应用程序必须知道要更新的数据库,还会增加成本(如果您打算监视数据库并托管在不同的基础架构上,则会更多)。 p>

  • Mongo 2用于在更新时锁定整个数据库,所以我认为最好将其分开,但Mongo 3与WiredTiger仅锁定文档,因此您不会遇到我们使用过的问题过去。

  • 将数据库分成两部分的一个好处是,即使您的数据爆炸了一个数据库,另一个仍然有效

恕我直言,如果你使用一台体面的机器来存储数据库并以正确的方式进行监控,那么在你的系统拥有数百万活跃用户之前,你不会遇到任何麻烦。您还可以使用副本集和分片来提高效率。