我是新来的MongoDB - 来自关系数据库的背景。我想用一些评论来设计一个问题结构,但我不知道用哪个关系来评论:embed
或reference
?MongoDB关系:嵌入还是引用?
一些评论的问题,如stackoverflow,就会有这样的结构:
Question
title = 'aaa'
content = bbb'
comments = ???
起初,我想用嵌入式的意见(我认为embed
MongoDB中建议),像这样:
Question
title = 'aaa'
content = 'bbb'
comments = [ { content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'},
{ content = 'xxx', createdAt = 'yyy'} ]
清楚,但我很担心这种情况下:如果我想编辑指定的评论,我怎么得到它的内容和它的问题吗?有没有_id
让我找到一个,也没有question_ref
让我找到它的问题。 (我这样的新手,我不知道是否有任何的方式来做到这一点没有_id
和question_ref
)
我一定要使用ref
不embed
?那么我必须创建一个新的评论集合?
无论是否创建字段,所有Mongo对象都使用_ID创建。所以在技术上每个评论都会有一个ID。 – 2014-01-10 05:31:28
@RobbieGuilfoyle不正确 - 请参阅http://stackoverflow.com/a/11263912/347455 – pennstatephil 2014-05-14 20:57:41
我站在更正,谢谢@pennstatephil :) – 2014-05-15 13:23:29