के लिए मोंगो _id मैं एक mongo सरणी में वस्तुओं के लिए संपत्ति के रूप में _id जोड़ना चाहता हूं।सबडो दस्तावेज़ सरणी
क्या यह अच्छा अभ्यास है? क्या अनुक्रमण के साथ कोई समस्या है?
के लिए मोंगो _id मैं एक mongo सरणी में वस्तुओं के लिए संपत्ति के रूप में _id जोड़ना चाहता हूं।सबडो दस्तावेज़ सरणी
क्या यह अच्छा अभ्यास है? क्या अनुक्रमण के साथ कोई समस्या है?
मैं एक mongo सरणी में वस्तुओं के लिए संपत्ति के रूप में _id जोड़ना चाहता हूं।
मुझे लगता है: इस प्रश्न के लिए संरचना के
{
g: [
{ _id: ObjectId(), property: '' },
// next
]
}
प्रकार।
क्या यह अच्छा अभ्यास है?
सामान्य रूप से नहीं। _id
एस इकाइयों के लिए अद्वितीय पहचानकर्ता हैं। जैसे कि यदि आप उप-दस्तावेज़ ऑब्जेक्ट के भीतर _id
जोड़ना चाहते हैं तो हो सकता है कि आपने अपने डेटा को बहुत अच्छी तरह से सामान्य नहीं किया हो और यह आपके स्कीमा डिज़ाइन के भीतर मौलिक दोष का संकेत हो।
उप-दस्तावेज उस दस्तावेज़ के लिए दोहराने वाले डेटा को शामिल करने के लिए डिज़ाइन किए गए हैं, यानी पते या उपयोगकर्ता या कुछ।
कहा जा रहा है कि _id
हमेशा जोड़ने के लिए एक बुरी चीज नहीं है। उदाहरण के साथ मैंने अभी पते के साथ कहा है। कल्पना करें कि आपके पास एक शॉपिंग कार्ट सिस्टम था और (किसी कारण से) आपने ऑर्डर दस्तावेज़ में पते को दोहराना नहीं था, तो आप उस उप-दस्तावेज़ को प्राप्त करने के लिए _id
या किसी अन्य पहचानकर्ता का उपयोग करेंगे।
इसके अलावा आपको दस्तावेज़ों को जोड़ने पर विचार करना होगा। यदि वह _id
किसी अन्य दस्तावेज़ का वर्णन करता है और गुण उस दस्तावेज़ के लिए उस लिंक के लिए कस्टम विशेषताएँ हैं जो उस लिंक किए गए दस्तावेज़ के संबंध में हैं तो यह भी ठीक है।
क्या अनुक्रमण के साथ कोई समस्या है? ताकि ध्यान में रखना करने के लिए कुछ एक छोटे, कम विशिष्ट आईडी खत्म हो गया है या नहीं उप दस्तावेज़ों के लिए बिल्कुल एक
_id
का उपयोग कर
एक ObjectId
अभी भी काफी बड़ा है।
इंडेक्स के लिए यह वास्तव में दस्तावेज़ पर मानक _id
फ़ील्ड के लिए कोई भी अलग काम नहीं करता है और पूरे क्षेत्र में एक अद्वितीय अनुक्रमणिका संग्रह (परिदृश्य निर्भर, अपने प्रश्नों का परीक्षण) में काम करना चाहिए।
एनबी: मोंगोडीबी आपके लिए उप-दस्तावेजों में _id
नहीं जोड़ देगा।
@aioobe मुझे लगता है कि इस मामले में हाँ, मेरा मतलब सामान्यीकरण था, यह एक बहुत पुराना जवाब है, लेकिन मेरा मानना है कि मेरा मतलब है कि उसके बारे में मेरा मतलब है कि संस्थाओं को अलग नहीं करना जो सामान्यीकरण होगा। – Sammaye
@aioobe किया धन्यवाद – Sammaye
यदि मैं उप दस्तावेज़ पर एक mongodb ऑब्जेक्ट _id बना देता हूं, तो क्या यह पूरे संग्रह में स्वचालित रूप से अद्वितीय है? – Saitama
प्रश्न यह है कि यह सवाल थोड़ा अस्पष्ट है। क्या आप थोड़ा और विवरण दे सकते हैं? – Eric
http://stackoverflow.com/questions/8245538/mongodb-id-cannot-be-an-array – 42n4
मुझे नहीं लगता कि लिंक के इस प्रश्न के साथ कुछ भी करना है। – Sammaye