繁体   English   中英

基本数据库(MongoDB)性能问题

[英]Basic database (MongoDB) performance question

我正在构建一个用于使用目录系统存储书签的Web应用程序。 我已经设置了这些集合:

  • 路径(S)
    --->目录(嵌入式文档)
    --->链接(嵌入式文档)

  • 用户(S)

所以表现明智,我应该:
- 将用户标识添加到创建的路径
- 将整个Paths集合嵌入特定用户

我想选择选项2,但是,我不知道......

编辑:
我也在考虑让整个界面变得更加灵活。 所以,这意味着我将通过ajax从特定路径(从登录用户)加载目录和链接。 这样,它更快,我不必触摸用户集合。 也许这改变了事情?

就像我在评论中说的那样,整个数据库中有1个庞大的集合似乎有点奇怪。 对?

那么mongoDB的主要目的是支持冗余数据。我建议第二种选择更好,因为在您的情况下,如果您将路径集合嵌入到特定用户中,那么仅使用单个查询就可以获取有关该用户的所有数据以及与路径收集有关。

而且,如果您遵循第一个选项,则必须触发两个单独的查询来获取所有数据,这将在一定程度上增加您的工作量。

由于mongodb将数据带入RAM,因此从一个集合中获取数据后,您可以将其存储到游标中,并从该游标数据中获取另一集合中的数据。 因此,如果我们明智地看待性能,我认为它不会带来太大影响。

RE:编辑。 如果您要将所有内容存储在单个文档中并使用嵌入式文档,那么当您提出查询时,请确保只选择所需的数据,否则您将加载整个文档,包括嵌入式文档。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM