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

एक ही मशीन पर तिथि के अनुसार MongoDB शार्प

तकनीकी रूप से आपको अपनी सामग्री को शार्प करने की आवश्यकता नहीं है और केवल अपने क्षेत्र को अनुक्रमित करने की आवश्यकता है। हाँ, आप दिनांक फ़ील्ड पर अनुक्रमणिका बना सकते हैं और इसका सम्मान किया जाएगा जिसे आप क्वेरी योजना db.collection.explain("executionStats") पर जाकर देख सकते हैं।

हालांकि, एक शार्द कुंजी चुनना बहुत महत्वपूर्ण है। शार्प की को चुनते समय कुछ बातों का ध्यान रखना चाहिए

- Write scaling (high cardinality, Randomization)
- Query Isolation. (read)

दिनांक फ़ील्ड का चयन वास्तव में एक बहुत ही उच्च कार्डिनैलिटी देता है, हालांकि यह रैंडमाइजेशन करने में विफल रहता है और परिणामस्वरूप सभी दस्तावेज़ एक ही शार्ड में जमा हो जाते हैं और इसलिए यह सिस्टम की लिखने की क्षमता को सीमित कर देता है। इसी कारण से ObjectId को शार्प की के रूप में उपयोग करने के लिए हतोत्साहित किया जाता है।

http://docs.mongodb.org/manual/core/sharding- शार्ड-की/ उपरोक्त लिंक से सामग्री.."MongoDB ऑब्जेक्ट के लिए एक विशिष्ट पहचानकर्ता का उत्पादन करने के लिए दस्तावेज़ निर्माण पर ObjectId मान उत्पन्न करता है। हालांकि, इस मान में डेटा का सबसे महत्वपूर्ण बिट एक टाइम स्टैम्प का प्रतिनिधित्व करता है, जिसका अर्थ है कि वे एक में वृद्धि करते हैं नियमित और पूर्वानुमेय पैटर्न। भले ही इस मान में उच्च कार्डिनैलिटी है, इसका उपयोग करते समय, किसी भी तारीख, या अन्य नीरस रूप से बढ़ती संख्या को शार्ड कुंजी के रूप में, सभी सम्मिलित संचालन डेटा को एक ही खंड में संग्रहीत करेंगे, और इसलिए, एक ही शार्ड। नतीजतन, इस शार्ड की लिखने की क्षमता क्लस्टर की प्रभावी लेखन क्षमता को परिभाषित करेगी।"



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. मोंगोडब सर्वर से कनेक्ट करते समय अमान्य एनएस

  2. mongodb php फ़ील्ड अद्वितीय मान प्राप्त कर रहा है

  3. मुझे अपने play2 एप्लिकेशन में अपने नेस्टेड रिएक्टिवमोंगो कॉल की संरचना कैसे करनी चाहिए?

  4. MongoDB NodeJS प्रोसेस आउट ऑफ मेमोरी

  5. $in बनाम $or . का उपयोग करके MongoDB में क्वेरी करने का अनुकूलित तरीका