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

मोंगोडब ग्रुपबी इंडेक्स जोड़ने के बाद भी धीमा है

जैसा कि आप अपने द्वारा लिखी गई क्वेरी से देख सकते हैं, 2.0 में इस प्रकार के एकत्रीकरण के लिए आपको Map/Reduce चलाने की आवश्यकता है। MongoDB पर मैप/रिड्यूस में कुछ प्रदर्शन दंड हैं जिन्हें SO पहले पर कवर किया गया है। - मूल रूप से जब तक आप एक क्लस्टर में समानांतर करने में सक्षम नहीं होते हैं, तब तक आप स्पाइडरमॉन्की के माध्यम से सिंगल थ्रेडेड जावास्क्रिप्ट चलाने जा रहे हैं - एक त्वरित प्रस्ताव नहीं। अनुक्रमणिका, चूंकि आप चयनात्मक नहीं हैं, वास्तव में मदद नहीं करता है - आपको केवल संपूर्ण अनुक्रमणिका और संभावित रूप से दस्तावेज़ को स्कैन करना होगा।

2.2 की आसन्न रिलीज के साथ (वर्तमान में आरसी 1 में इसे लिखने के रूप में) हालांकि आपके पास कुछ विकल्प हैं। एकत्रीकरण ढांचा (जो मूल है, जेएस आधारित मानचित्र/रिड्यूस नहीं) 2.2 में पेश किया गया है जिसमें एक अंतर्निहित समूह संचालक और विशेष रूप से MongoDB में इस तरह के ऑपरेशन को गति देने के लिए बनाया गया था।

मैं 2.2 को एक शॉट देने की सलाह दूंगा और देखूंगा कि क्या समूहीकरण पर आपके प्रदर्शन में सुधार होता है। मुझे लगता है कि यह कुछ इस तरह दिखेगा (नोट:परीक्षण नहीं किया गया):

db.alarm.aggregate(
    { $group : {
        _id : "$serverName",
        count : { $sum : 1 }
    }}
);


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. नेस्टेड सरणी mongodb से तत्व निकालें

  2. आरओआर:मोंगोइड और फॉर्म हैश बनाते हैं

  3. एंड्रॉइड:मेरा एप्लिकेशन नहीं चलेगा क्योंकि मुझे अज्ञातहोस्ट अपवाद को संभालने की आवश्यकता है। जब मैं इसे दुर्घटनाग्रस्त करता हूं

  4. एग्रीगेट काउंट ऐरे मेंबर्स मैचिंग कंडीशन

  5. सबसे लोकप्रिय ओपन सोर्स डेटाबेस को स्वचालित और प्रबंधित करने की कला को पूर्ण करना:2017 @ Manynines