在MongoDB页面中:http://www.mongodb.org/display/DOCS/Inserting
doc = { author: 'joe',
created : new Date('03/28/2009'),
title : 'Yet another blog post',
text : 'Here is the text...',
tags : [ 'example', 'joe' ],
comments : [ { author: 'jim', comment: 'I disagree' },
{ author: 'nancy', comment: 'Good post' } ]}
db.posts.insert(doc);
db.posts.find( { "comments.author" : "jim" } )
当评论超过4MB时,这个文件不起作用吗?我们可以说,它很难超过4MB,但我想一个系统如果仅限于这样的评论的大小或数量,将会有一点限制。如果它是关系模型,那么除了磁盘空间之外没有这样的限制。
或者是否有其他方式来处理评论,以便它可以是任何大小?
答案 0 :(得分:5)
我认为你想要分享4MB的评论。
根据文档,您应该设计为当前的4MB限制。所以有两个想法:
答案 1 :(得分:1)
是的,如果评论增长超过4MB,则会出现问题。您可以使用mongo DbRef更改您的设计。
将您的文档拆分为两个,如Blog&评论
var comment = { id:"xx",
comments : [ { author: 'jim', comment: 'I disagree' },
{ author: 'nancy', comment: 'Good post' } ]}
}
此评论文件将包含与特定帖子相关的所有评论。并使用Dbref将此评论嵌入博客中,例如
db.comments.save(comment)
var doc = { author: 'joe',
created : new Date('03/28/2009'),
title : 'Yet another blog post',
text : 'Here is the text...',
tags : [ 'example', 'joe' ],
comments : [ new DBRef('comments', comment ._id) ]
}
db.blog.save(doc)