我一直在努力讓自己的頭部圍繞NoSQL,並且看到將數據嵌入到文檔中的好處。在MongoDB中存儲關係數據(NoSQL)
我不明白,希望有人能清除,是如何存儲數據,如果它必須是關係。
例如。
我有很多用戶。他們都在購買產品。所以每次他們購買產品時,我們都會將它添加到mongo的用戶文檔中,因此它的嵌入性和全部功能都很棒。
我遇到的問題是當涉及到該產品的某些內容發生變化時。
假設用戶A購買了名爲「Porsche」的汽車。然後,我們在用戶配置文件中添加一個引用。然而,在一場奇怪的比賽中,保時捷被法拉利收購。
你現在正在做什麼?更新每一條記錄並更改保時捷到法拉利的名稱?
通常在SQL中,我們將創建3個表。一個用於用戶,一個用於汽車(描述,型號等)&一個用於映射用戶購買。
你對Mongo做同樣的事嗎?看起來如果你沿着這條路線走下去,你試圖讓Mongo做SQL的方式,這不是它的目的。
我可以理解某些數據對於嵌入(地址,聯繫人詳細信息,註釋等)的好處,但是當您需要引用可以並需要定期更改的數據時會發生什麼情況?
我希望這個問題是清楚的
如果數據是關係數據,請將其存儲在關係數據庫中。 – David