MongoDBcollections大小性能/更多collections与更多文档

有没有人有MongoDB性能的想法? 我一直在使用mysql多年,并试图确定是否更优化有更多的集合或更多的文档(指的是非常大量的数据) – 在MySQL中,更多的行比容纳更多的表。

例如,我们可以有两个客户的酒店表(集合),或一个表/集合有一个额外的列包含酒店。

也许它可能更优化,因为它使磁盘上的集合规模更小(通过有两个集合,而不是一个),所以它更快地查询?

注意:不要忘记,mongodb对文档大小有限制,我认为它是16mb,但是你需要检查文档

mongodb的要点是存储非规范化的数据,并避免“连接”,但是如果数据是完全独立的,它仍然应该存储在不同的集合中。

在我们的网站上,我们有几个不同的集合,其中一个通过引用链接。 如果驱动程序将为您parsing引用,则取决于您使用的驱动程序。

另外要考虑的是你将如何更新数据。

MongoDB将整个集合映射到内存中,并允许您的操作系统确定哪些部分应该分页到磁盘,以及哪些部分应该存储在内存中。 如果整个数据集的大小相同,那么在1个大表和2个中等大小的表之间的性能应该没有太大的差别。 这里的一个考虑因素是索引,如果将数据组合到一个集合中,并且索引可以覆盖全部,则可以更快地查找数据。

因此,您可以在每个酒店都有一个集合,其中包含一个名为“customers”的属性,该属性是每个客户的详细信息的数组或哈希值,您可以从该数组中推拉项目(或者可以使其散列在一个唯一的客户标识符更容易访问)。 不要忘记16mb的限制。

如果我有更多关于您要存储什么的上下文和详细信息,以及您需要针对数据运行哪种查询,可能会更容易回答您的问题