MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

स्टोर एनम MongoDB

TL; DR:स्ट्रिंग्स संभवतः सुरक्षित हैं पसंद, और प्रदर्शन अंतर नगण्य होना चाहिए। पूर्णांक विशाल संग्रह के लिए समझ में आता है जहां एनम को अनुक्रमित किया जाना चाहिए। वाईएमएमवी.

सच।

मेरी राय में यह पूर्णांकों का एक प्रमुख लाभ है। हालाँकि, इसके लिए आपको यह भी सुनिश्चित करना होगा कि enum . के संबद्ध मान मत बदलो। यदि आप इसे खराब कर देते हैं, तो आप लगभग निश्चित रूप से कहर बरपा देंगे , जो एक बहुत बड़ा नुकसान है।

यदि आप वास्तव में एक एनम डेटा प्रकार का उपयोग कर रहे हैं, तो यह संभवतः आंतरिक रूप से किसी प्रकार का पूर्णांक है, इसलिए पूर्णांक को कम प्रसंस्करण की आवश्यकता होनी चाहिए। किसी भी तरह, वह ओवरहेड नगण्य होना चाहिए।

जो कुछ कहा गया है, मैं उसे दोहरा रहा हूं, लेकिन हो सकता है कि इससे अन्य पाठकों को मदद मिले। संक्षेप में:

  • एनम वैल्यू मैप को मिलाना कहर बरपाता है। अपने Declined की कल्पना करें राज्यों को अचानक Accepted के रूप में व्याख्यायित किया जाता है , क्योंकि Declined मान '2' था और अब यह Accepted है क्योंकि आपने एनम को फिर से व्यवस्थित किया और मैन्युअल रूप से मान निर्दिष्ट करना भूल गए... (sudders )
  • स्ट्रिंग अधिक अभिव्यंजक हैं
  • पूर्णांक कम जगह लेते हैं। आमतौर पर डिस्क स्थान कोई मायने नहीं रखता, लेकिन अनुक्रमणिका स्थान RAM को खा जाएगा जो कि महंगा है।
  • पूर्णांक अद्यतन वस्तु का आकार नहीं बदलते हैं। स्ट्रिंग्स, यदि उनकी लंबाई बहुत भिन्न होती है, तो उन्हें पुन:आवंटन की आवश्यकता हो सकती है। हालांकि, स्ट्रिंग पैडिंग और पैडिंग कारक को इसे कम करना चाहिए।
  • पूर्णांक फ़्लैग हो सकते हैं (अभी तक क्वेरी करने योग्य नहीं (अभी तक), दुर्भाग्य से, देखें SERVER-3518 )
  • इंटीजर को $gt . द्वारा क्वेरी किया जा सकता है / $lt ताकि आप जटिल $or . को कुशलतापूर्वक कार्यान्वित कर सकें प्रश्न, हालांकि यह एक रहस्यमय आवश्यकता है और इसमें कुछ भी गलत नहीं है $or प्रश्न...



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. समूह के साथ कैसे एकत्र करें और सही ढंग से क्रमबद्ध करें

  2. खेल के लिए चुनने के लिए डेटाबेस

  3. स्प्रिंग HATEOAS प्रतिनिधित्व मॉडल, संपत्ति लिंक सेट नहीं कर सकता क्योंकि कोई सेटर नहीं, कोई मुरझाया नहीं और यह दृढ़ता निर्माता का हिस्सा नहीं है

  4. MongoDB Mongoid का उपयोग करके MongoHQ से कनेक्ट नहीं होगा

  5. क्या मोंगो की ऑब्जेक्ट आईडी को अपने विशिष्ट पहचानकर्ता के रूप में उपयोग करना ठीक है? यदि हां, तो मैं इसे एक स्ट्रिंग में कैसे परिवर्तित कर सकता हूं और इसे स्ट्रिंग द्वारा देख सकता हूं?