5

DDD (ब्लू बुक, इवांस) एक फैक्टरी के अनुसार एक वैध राज्य में एक सकल रूट बनाने के लिए जिम्मेदारी है। क्या इसका मतलब यह तकनीकी आईडी (ऑब्जेक्ट आईडी में mongoDB दुनिया) के साथ-साथ डोमेन आईडी बनाने में सक्षम होना चाहिए?डीडीडी और मोंगोडीबी: क्या मोंगो ऑब्जेक्ट आईडी बनाने के लिए ठीक है?

एक ओर, यह तकनीकी विवरण की तरह लगता है और यह लगता है कि मोंगो आईडी के निर्माण को संभालने के लिए ठीक है।

दूसरी ओर, आईडी द्वारा पूछताछ सक्षम करना (डीडीडी भंडार में getById होने से) डोमेन को तकनीकी आईडी का खुलासा करता है, जो बदले में इसे बनाने के लिए फैक्ट्री की ज़िम्मेदारी बना देगा।

शायद मैं तकनीकी आईडी के बनाम डोमेन आईडी के विभिन्न उपयोग-मामलों/ओवरलैप इत्यादि पर अपना सिर नहीं प्राप्त कर सकता हूं या शायद मैं अति उत्साही हूं, लेकिन मैं आपकी राय की सराहना करता हूं।

संक्षेप में: डीडीडी में: क्या एक कारखाना तकनीकी आईडी के साथ-साथ डोमेन आईडी बनाने में सक्षम होना चाहिए?

संभव कार्यान्वयन: हाय/लो (How to set the hilo sequence starting value in MongoDB Norm?)

संपादित करें: हाय/लो रास्ता हठ परत है, जो कुछ ही भंडार पता होना चाहिए करने के लिए फैक्टरी को उजागर करता है, हालांकि। हममम

धन्यवाद

+0

माइनर पूरी तरह से प्रासंगिक टिप्पणी नहीं है; MongoDB वास्तव में आईडी नहीं बनाता है, क्लाइंट (ड्राइवर) करता है (अपरर्ट ऑपरेशंस के अपवाद के साथ)। –

उत्तर

3

कारखानों आईडी के साथ खुद में काफी चिंतित है क्योंकि एक समग्र की वैधता पहचान के लिए ओर्थोगोनल है नहीं है। पहचान, कुछ अलग अलग तरीकों से सौंपा जा सकता है या तो एक संबंधपरक डेटाबेस जो मामले में भंडार इसे प्रबंधित करने की है, या एक UUID के रूप में/GUID जिस स्थिति में यह कारखाना, या भंडार, या द्वारा सौंपा जा सकता है से एक वृद्धिशील आईडी के रूप में यहां तक ​​कि कॉलिंग क्लाइंट जो सुविधाजनक है क्योंकि क्लाइंट के पास डिफ़ॉल्ट रूप से कुंजी है।

जब भी संभव हो, मैं योगों के लिए एक पहचान को बनाए रखने का प्रयास करता हूं। मुझे यकीन नहीं है कि क्या मोंगोडीबी को एक अतिरिक्त तकनीकी आईडी की आवश्यकता है, लेकिन यदि ऐसा होता है और डोमेन आईडी का उपयोग अपने स्थान पर नहीं किया जा सकता है, तो मोंगोडीबी को इसे अपने और दृश्यों के पीछे प्रबंधित करना चाहिए।

+0

'समग्र की वैधता पहचान के लिए ऑर्थोगोनल है।' निश्चित रूप से कुछ मामलों में कुल मिलाकर पहचान को वैध माना जा सकता है? –

+0

लेकिन वास्तव में केवल एक डोमेन पहचान (जिसे कारखाने में सही किया जाना चाहिए?) और तकनीकी आईडी नहीं है। अभी भी मेरा सिर नहीं मिल सकता है कि यह क्यों पसंद किया जाता है (हालांकि आवश्यक नहीं) मोंगोडब में एक अलग तकनीकी आईडी रखने के लिए, लेकिन मुझे लगता है कि यह एक पूरी तरह से अलग सवाल है –

+0

एक असाइन किया गया पहचान मान इंगित कर सकता है कि एक समग्र निरंतर है, लेकिन वैधता अलग है । मैं निश्चित रूप से रिश्ते को देखता हूं, मुझे लगता है कि पहचान इस संबंध में विशेष उपचार प्राप्त करती है ... – eulerfx