我使用mongodb作为我的后端。我拥有电影,音乐,书籍等数据,我将其存储在一个集合中。每个bson条目的必填字段是“_id”,“name”,“category”。其他字段取决于条目所属的类别。例如,我有一个存储的电影记录。mongodb-架构设计
{
"_id": <some_id>,
"name": <movie_name>,
"category": "movie",
"director": <director_name>,
"actors": <list_of_actors>,
"genre": <list_of_genre>
}
对于音乐,我也有,
{
"_id": <some_id>,
"name": <movie_name>,
"category": "music"
"record_label": <label_name>
"length": <length>
"lyrics": <lyrics>
}
现在我有12个不同的类别,其中只有_id,名称和类别是常见的领域。其余的字段对于不同的类别都是不同的。我决定将所有数据存储在一个单一的收藏中,还是应该为每个类别制作不同的收藏?
该选择实际上取决于您的偏好和您的应用程序用例;集合不强制执行单个文档模式。你需要搜索电影,书籍和音乐......还是他们完全独立的实体? – Stennie
搜索我只会使用名称或_id。 –
我的问题是您是否需要按名称搜索多个类别的匹配项,或者您是否一次只搜索一个类别(例如,只能按电影名称搜索,而不能搜索“电影和音乐”)。将这些保存在同一个集合中的一个原因是为了更容易/可能地进行跨分类搜索。 – Stennie