8

我正在尝试使用 mongo db 实现博客文章存储。

我有两个域实体:

“博文”和“作者”

目前我已将 AuthorId 属性添加到博客文章实体。这是存储对象之间关系的正确方法吗?

4

2 回答 2

20

我认为这篇文章适合你http://www.mongodb.org/display/DOCS/Schema+Design

用例

客户/订单/订单行项目

订单应该是一个集合。客户收藏。line-items 应该是嵌入在 order 对象中的 line-items 数组。

博客系统。

帖子应该是一个集合。帖子作者可能是一个单独的集合,或者只是帖子中的一个字段,如果只是一个电子邮件地址。评论应该是帖子中的嵌入对象以提高性能。

架构设计基础

凯尔银行家,10 代

http://www.10gen.com/presentation/mongosf2011/schemabasics

索引和查询优化 Alvin Richards,企业工程高级总监

http://www.10gen.com/presentation/mongosf-2011/mongodb-indexing-query-optimization

**这 2 个视频是 mongoddb 上最好的视频,恕我直言*

于 2011-09-02T17:47:07.747 回答
9

目前我已将 AuthorId 属性添加到博客文章实体。这是存储对象之间关系的正确方法吗?

我会说不。您“应该”以非规范化的方式将所需的所有内容存储在博客文档中(例如博客文章、评论、标签等)。所以如果你想显示作者的名字,你应该把它添加到博客文档中。这将允许使用单个查询获取整个页面的数据,这有点像面向文档的数据库。

于 2010-06-27T18:02:06.007 回答