假设我将有数百万条评论交叉发布到多个兴趣点。我应该多次存储每个交叉发布的评论:
{
user_id: 1,
text: "hello world",
poi_id: some_id1
}
{
user_id: 1,
text: "hello world",
poi_id: some_id2
}
或者我应该将其作为数组
{
user_id: 1,
text: "hello world",
poi_ids: [some_id1, some_id2]
}
第一个可以在poi_id上使用索引并以极快的速度查询,但存储注释的冗余副本。第二个作为数据库结构更直观,并且节省空间,但是如果我想要获得与some_id1相关的所有注释,我担心使用$ in的查询效率。