使用用于1-M关系的填充功能嵌入字段VS

时间:2019-04-22 06:31:43

标签: mongodb

我正在开发一个使用MongoDB的医疗应用程序。我有一个用户和案例集合。尽管Mongo是非关系数据库,但它确实提供了引用相关集合并使用populate嵌入相关文档的功能。鉴于此,我的问题是这个。

在我的案例集合中,我有一个Doctors字段,该字段引用了Users集合。我需要经常告诉医生名字。因此

1)我可以将医生姓名和ID一起嵌入到Cases集合中

Cases Schema = { 
Doctors = [{id: ObjectID, name: String}]
}

2)我只能将医生ID的数组存储在Cases集合中,并使用填充来获取所需的用户字段。

Cases Schema = { 
Doctors = [{type: ObjectID}]
}

哪种方法对查询更有效?该方法的优缺点是什么?

0 个答案:

没有答案