0
考虑一个典型的博客应用程序,博客可以有很多帖子,帖子可以有很多评论。 假设我们想提供一个RESTfull API来访问它。MongoDB中的关系(通过Mongoose)
如果我要使用关系数据库来存储这些数据,我会在posts表中有一个外键,在comments表中有一个外键给帖子。
当通过使用猫鼬MongoDB中,我看到三种不同的方式来设计的集合:
有三个类别:一为博客,一个是员额和一个征求意见。帖子的模式将有一个字段引用其博客,而注释的模式将有一个字段引用其帖子。 (非常类似于关系解决方案)。
同样,三个集合,但每个博客都有一个对帖子的引用数组,每个帖子都有一个引用数组。
只有一个包含子文档和子子文档的集合,其中博客包含一系列帖子,每个帖子都包含一系列评论。
哪一个是正确的?每一个的优缺点是什么?
开始[这里](http://docs.mongodb.org/manual/core/data-modeling/)和[here](http://docs.mongodb.org/manual/use-cases/storing-注释/)。老实说,没有正确的答案。缓存页面,文章和评论数据库外部是一个非常明智的选择,有助于缓解一些可能的问题。 – WiredPrairie 2013-04-11 00:20:28