में कई रिश्तों को व्यवस्थित करने के लिए मेरे पास दो टेबल/संग्रह हैं; उपयोगकर्ता और समूह। उपयोगकर्ता किसी भी समूह के सदस्य हो सकता है और उपयोगकर्ता किसी भी समूह के मालिक भी हो सकता है। एक रिलेशनल डेटाबेस में मेरे पास शायद उपयोगकर्ता समूह नामक उपयोगकर्ता समूह, एक समूह आईडी कॉलम और एक IsOwner कॉलम के साथ एक तीसरी तालिका होगी।MongoDB
मैं मोंगोडीबी का उपयोग कर रहा हूं और मुझे यकीन है कि दस्तावेज़ डेटाबेस में इस तरह के रिश्ते के लिए एक अलग दृष्टिकोण है। क्या मुझे ऑब्जेक्ट आईडी के दो सरणी के रूप में उपयोगकर्ता तालिका के अंदर समूहों और समूहों के रूप में सूची को एम्बेड करना चाहिए? क्या मुझे समूह सारणी में सदस्यों और मालिकों की सूची दो सरणी के रूप में भी संग्रहित करनी चाहिए, रिश्तों की जानकारी को दोहराए जाने वाले संबंधों को प्रभावी ढंग से मिरर करना चाहिए?
या क्या ब्रिजिंग उपयोगकर्ता समूह समूह कई डेटाबेसों के लिए दस्तावेज़ डेटाबेस में एक वैध अवधारणा है?
धन्यवाद
[इस प्रश्न] के उत्तर भी देखें (http://stackoverflow.com/questions/2336700/mongodb-many-to-many-association) और [यह प्रश्न] (http://stackoverflow.com/questions/ 54 9 86 9 2/कई-से-रिश्ते-इन-कॉचडब-या-मोंगोडब) –
मुझे पता है कि यह पुराना है लेकिन मैं स्केल के बारे में भी सोच रहा हूं।क्या होगा यदि आपके पास 1000 समूह हैं? – FarscapePROJ
ग्रेट प्वाइंट - इस मामले में, एक और विकल्प, SQL डेटाबेस से जंक्शन संबंध के बराबर उपयोग करना है- दो विदेशी कुंजी के साथ एक मध्यवर्ती संग्रह- प्रत्येक संबंधित संग्रह के लिए एक। इस मामले में, आप 3 प्रश्न निष्पादित कर सकते हैं: (1) अभिभावक परिणाम प्राप्त करने के लिए एक सामान्य खोज(), (2) इंटरमीडिएट परिणाम प्राप्त करने के लिए एक आईएन क्वेरी, और अंत में (3) विदेशी कुंजी का उपयोग कर एक आईएन क्वेरी बाल अभिलेख खोजने के लिए मध्यवर्ती परिणाम। (इस प्रकार हम वाटरलाइन में इस सुविधा को कार्यान्वित करते हैं) – mikermcneil