我正在尝试构建一个应用程序,其中只有这三个模型:
- 主题(只有一个标题(最多100个字符)) - 评论(具有文本(可能非常长)、作者ID、主题ID、创建日期) - 作者(只有一个用户名)
实际上是一个非常简单的数据库结构。一个主题可以有多个评论,这些评论由作者创建。一个作者可以有多个评论。
我仍在努力找出设计数据库结构(文档)的最佳方法。一开始我想把所有东西都放在自己的架构中,就像上面那样。三个文档。但既然这是一个nosql数据库,我应该尽量消除对连接的需求。现在我真的在考虑把所有东西都放在一个文档中,听起来也很疯狂。
这些是我的实际查询:
- 首页查询:列出今天收到最多评论的所有主题(经常运行) - 搜索字段的自动建议列表:列出标题包含字符串“X”的所有主题 - 主题的主页面查询:列出一个主题的所有评论,以及它们的作者的用户名
由于我的大多数查询都需要来自至少两个文档的数据,所以我真的应该像这样将它们全部放在单个文档中吗?
评论(文本、用户名、主题标题、创建日期)
这样我将不需要任何连接,但也会多次保存主题的标题,例如在每个评论中。
我只是无法决定。
- 主题(只有一个标题(最多100个字符)) - 评论(具有文本(可能非常长)、作者ID、主题ID、创建日期) - 作者(只有一个用户名)
实际上是一个非常简单的数据库结构。一个主题可以有多个评论,这些评论由作者创建。一个作者可以有多个评论。
我仍在努力找出设计数据库结构(文档)的最佳方法。一开始我想把所有东西都放在自己的架构中,就像上面那样。三个文档。但既然这是一个nosql数据库,我应该尽量消除对连接的需求。现在我真的在考虑把所有东西都放在一个文档中,听起来也很疯狂。
这些是我的实际查询:
- 首页查询:列出今天收到最多评论的所有主题(经常运行) - 搜索字段的自动建议列表:列出标题包含字符串“X”的所有主题 - 主题的主页面查询:列出一个主题的所有评论,以及它们的作者的用户名
由于我的大多数查询都需要来自至少两个文档的数据,所以我真的应该像这样将它们全部放在单个文档中吗?
评论(文本、用户名、主题标题、创建日期)
这样我将不需要任何连接,但也会多次保存主题的标题,例如在每个评论中。
我只是无法决定。