अंतरिक्ष बचाने के लिए लघु कुंजी नामों का उपयोग करने के लिए मोंगो डीबी में यह सामान्य प्रथा है। उदाहरण के लिए, कोई "first_name"मोंगोइड और रेल के साथ फील्ड उपनाम
के बजाय "fn" का उपयोग करना चाह सकता है हालांकि आपके ऐप में, यदि आप जगह पर "fn" का उपयोग करते हैं तो आप खराब हो जाते हैं। यह बहुत बदसूरत है। विशेष रूप से रेल के लिए, क्या मोंडोइड में एक क्षेत्र घोषित करते समय उपनाम निर्दिष्ट करने का कोई आसान तरीका है?
साथ ही, क्या किसी को भी ओपन सोर्स नमूना परियोजनाओं के बारे में पता है जो मोंगोइड का उपयोग करते हैं?
धन्यवाद!
यह एक गति समस्या नहीं है, यह एक अंतरिक्ष मुद्दा है। "First_name" और "fn" को अरबों बार (~ 10GB बनाम ~ 2 जीबी) संग्रहित करने के बीच एक बड़ा अंतर है। यदि आप कमोडिटी हार्डवेयर पर चल रहे हैं, तो स्पेस सस्ता है, लेकिन यदि आप सर्वर ग्रेड हार्डवेयर पर चल रहे हैं, तो स्पेस महंगा है। देखें: http://blog.boxedice.com/2010/10/23/on-shortened-field-names-in-mongodb/ – Intelekshual
केवल एक बार जब मैं फ़ील्ड नामों को छोटा करना चाहता हूं तो यह है कि: 1) छोटे मान, 2) बहुत बड़ा डेटासेट, 3) बहुत ढीला स्कीमा (adhoc फ़ील्ड)। उन 3 मामलों को देखते हुए मैं सहमत हूं कि प्रसंस्करण विधियों को ओवरराइट करना समझ में आता है (जैसा कि नीचे दिया गया है)। यहां तक कि आपको पूछताछ करते समय भी इसे ध्यान में रखना होगा, इसलिए आप थोड़ा अधिक जटिल कोड तैयार कर रहे हैं। उदाहरण के लिए यदि मेरे पास वास्तव में एक बड़ा डेटासेट है, छोटे मान हैं, लेकिन मेरी स्कीमा लगभग कभी नहीं बदलेगी (ट्रैकिंग आंकड़ों की तरह) तो शायद मैं mongodb के बजाय postgresql का चयन करूंगा। –
बहुत यकीन है कि डेवन रैपिन की राय के साथ 10 जीन (मोंगोडीबी के पीछे कंपनी) पर असहमत [1] असहमत हैं। न केवल, जैसा कि @Intelekshual उल्लेख किया गया है, क्या आप महत्वपूर्ण डिस्क स्पेस बचत का एहसास कर सकते हैं, लेकिन मोंगो को आपके कामकाजी सेट और इंडेक्स को स्मृति में स्टोर करने की आवश्यकता है। छोटे दस्तावेजों का मतलब है कि आप स्मृति में अधिक स्टोर कर सकते हैं, प्रदर्शन का उल्लेख नहीं करना चाहिए कि आपके एप कोड लाभ में अधिक ब्लोटेड मोंगो डॉक्स [1]: http://docs.mongodb.org/manual/faq/developers/# कैसे-करें-i-optimize-storage-use-small-document – xentek