我使用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