我決定將我的數據庫從MySQL遷移到Mongo,因爲大部分時間,我的數據沒有結構化。它讓我在傳統SQL中過於複雜的可能性。如何在NoSQL中查詢關係?
我目前面臨的一個問題是如何在NoSQL中實現傳統的SQL關係模型。我多次讀過NoSQL不是爲了處理關係而設計的。我是否需要將它們作爲數組添加到具有關係的文檔中?
這是一個讓我卡住的情況。在SQL中,我有一個單獨的oauth訪問令牌表,它具有user_id,client_id,access_token,作爲其屬性過期。這是用戶和access_token之間的1-N關係。我會如何在NoSQL中做到這一點?通過添加一個數組字段oauth_tokens?如果我這樣做,我該如何搜索數組中的令牌?如何查詢
search for a document where the _id is $user_id and there is an element
with $token in the access_tokens array?
您可以在mongodb中使用map-reduce概念與兩個不同的集合形成關係。 – 2014-09-19 09:18:24
@KumarKailash可能你不能。 MongoDB一次只能處理**一個**集合,並且「故意」這樣做是出於某種原因。這個問題需要提供一個具體的點和示例問題來解決,或者它基本上「太寬泛」。所以如果作者想要一個真正的答案,那麼建議實際描述這個問題而不是要求一般化。 – 2014-09-19 09:59:59
在我問這個問題之前,我對mongo中的「關係」知之甚少;在Google搜索並嘗試和測試之後,我有一點點的知識。對於那個很抱歉。我現在得到了我所需要的東西,但我很確定在最近的將來我會問這個類似的問題,那時我會非常具體。 – Gasim 2014-09-19 23:08:23