【发布时间】:2015-11-15 22:37:23
【问题描述】:
我是 MongoDB 的新手,并且一直在使用 Node.js 使用 MongoDB。我正在开发一个示例项目来了解哪个是像 github 这样的问题跟踪器。
我不清楚在设计文档来存储数据时使用什么方法。
选项 1
来自关系模型世界,我发现创建像这样的文档非常自然
- 项目 { id, name}
- ProjectUserMapping {id, projectid, userid}
- 问题 {id, projectid, name, blah, blah.. }
等等。
选项 2
在网上看了几篇文章后,我发现有人在这条线上使用了一些东西
Project {
Users ['yasser', 'neel', 'ian'],
Issues [
{'how do I turn this on', '22/12/2014'...'}
]
哪个是更好的方法,考虑以下 - 很多项目,每个项目都会有很多问题、标签、过滤器等 - 查询时间。例如,如果我需要对问题进行通用搜索。我是否需要扫描所有项目下的问题,因为与以前不同,现在我没有单独的问题表。
请帮助我理解这一点。
【问题讨论】:
标签: mongodb