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

MongoDB में धीमी क्वेरी का विश्लेषण

हमें जनता के लिए MongoDB के लिए हमारे धीमे क्वेरी विश्लेषक की उपलब्धता की घोषणा करते हुए खुशी हो रही है! धीमे क्वेरी विश्लेषक का उपयोग करके आप किसी विशेष समयावधि में अपने किसी भी सर्वर पर धीमी क्वेरी की शीघ्रता से पहचान कर सकते हैं. डिफ़ॉल्ट रूप से, "धीमी क्वेरी" को 100ms से अधिक समय लेने वाली क्वेरी के रूप में परिभाषित किया जाता है।

धीमी क्वेरी हीटमैप

हीट मैप आपको आपके सिस्टम में धीमी क्वेरी का त्वरित दृश्य अवलोकन देता है। चार्ट का लंबवत अक्ष घातीय समय है। इसका मतलब है कि चार्ट में बबल जितना ऊंचा होगा, क्वेरी उतनी ही धीमी होगी (परिमाण के क्रम के अनुसार) - इसलिए उन बुलबुलों पर नज़र रखें जो लगातार आपके चार्ट के शीर्ष पर हैं। अंतर्निहित क्वेरी का विवरण देखने के लिए आप बबल पर भी क्लिक कर सकते हैं।

एक ही प्रकार के प्रश्नों का रंग समान होता है। इससे आप अपनी धीमी क्वेरी में पैटर्न की आसानी से पहचान कर सकते हैं. आप किसी विशेष समय सीमा में ज़ूम करने के लिए ग्राफ़ के कुछ हिस्सों का चयन भी कर सकते हैं।

उदा. ऊपर के उदाहरण में आप लाल बिंदुओं का एक समूह देख सकते हैं जो 10 सेकंड + ले रहे हैं। आप यह भी देख सकते हैं कि एक घंटे में एक बार चलने वाले बैकग्राउंड जॉब को निष्पादित होने में 28 सेकंड का समय लग रहा है। वास्तविक क्वेरी प्राप्त करने के लिए आप डेटा बिंदु पर क्लिक कर सकते हैं।

धीमी क्वेरी डेटा तालिका

धीमी क्वेरी डेटा तालिका आपको सभी धीमे क्वेरी डेटा का एक सारणीबद्ध दृश्य देती है। डेटा तालिकाएं आपकी धीमी क्वेरी के बारे में कई महत्वपूर्ण मीट्रिक प्रदर्शित करती हैं:

  • टाइप करें - क्वेरी का प्रकार - क्वेरी करना, सम्मिलित करना, अपडेट करना, हटाना आदि
  • डेटाबेस और संग्रह - डीबी और क्वेरी का संग्रह
  • क्वेरी - हटाए गए क्वेरी पैरामीटर वाली वास्तविक क्वेरी
  • गिनें - चुनी गई समयावधि में क्वेरी जितनी बार चलाई गई
  • nस्कैन किया गया - इंडेक्स में स्कैन की गई प्रविष्टियों की संख्या + संग्रह से स्कैन की गई वस्तुओं की संख्या
  • अवधि(एमएस) - एमएस में क्वेरी का औसत निष्पादन समय
  • प्रतिक्रिया लंबाई(बाइट्स) - क्वेरी की औसत प्रतिक्रिया लंबाई बाइट्स में परिणाम देती है
  • nलौटा गया - क्वेरी के निष्पादन के अनुसार लौटाए गए दस्तावेज़ों की औसत संख्या
  • रीड लॉक(माइक्रो सेकेंड) - माइक्रो सेकेंड में औसत रीड लॉक टाइम
  • लेखन लॉक(सूक्ष्म सेकंड) - माइक्रो सेकेंड में औसत राइट लॉक टाइम

अपनी ज़रूरत का दृश्य बनाने के लिए आप धीमी क्वेरी तालिका को उपरोक्त में से किसी भी कॉलम के आधार पर क्रमित कर सकते हैं। क्वेरी डेटा को विश्लेषण के लिए एक्सेल में भी डाउनलोड किया जा सकता है। धीमी क्वेरी डेटा डाउनलोड करने और एक्सेल में अपना कस्टम विश्लेषण करने के लिए "डेटा को csv के रूप में डाउनलोड करें" लिंक पर क्लिक करें।

समस्या प्रश्नों को आसानी से पहचानने के लिए, हम कई अंतर्निहित दृश्य प्रदान करते हैं।

“सबसे ज़्यादा बार-बार” क्रम में लगाई गई धीमी क्वेरी

यह दृश्य (अवरोही क्रम में) उन प्रश्नों को प्रस्तुत करता है जो सिस्टम में सबसे अधिक बार निष्पादित होते हैं। आप सूची में शीर्ष प्रश्नों पर विशेष ध्यान देना चाहते हैं। यदि उनका nScanned मान अधिक है या अवधि अधिक है, तो आपको इस क्वेरी के लिए उपयुक्त अनुक्रमणिका जोड़ने की आवश्यकता है। इससे डिस्क से स्कैन किए गए दस्तावेज़ों की संख्या कम हो जाती है।

“अधिकतम डॉक्स/इंडेक्स स्कैन किए गए” के अनुसार क्रमबद्ध धीमी क्वेरी

यह दृश्य उन प्रश्नों को प्रस्तुत करता है (अवरोही क्रम में) जो किसी संग्रह में सबसे अधिक अनुक्रमणिका प्रविष्टियों या अधिकांश दस्तावेज़ों को स्कैन कर रहे हैं। एक उच्च 'nScanned' मान का अर्थ है कि आपके पास कोई अनुक्रमणिका नहीं है या आपके पास सही अनुक्रमणिका नहीं है। सिस्टम में प्रत्येक क्वेरी के लिए एक इंडेक्स जोड़ना संभव नहीं हो सकता है - लेकिन आपको यह सुनिश्चित करना चाहिए कि कम से कम आपके उच्च-आवृत्ति वाले प्रश्न सभी अच्छी तरह से अनुक्रमित हों।

धीमी क्वेरी को “सबसे धीमी क्वेरी” के आधार पर क्रमबद्ध किया गया

यह दृश्य उन प्रश्नों को प्रस्तुत करता है (अवरोही क्रम में) जो निष्पादित होने में अधिकतम समय ले रहे हैं। अगर क्वेरी बहुत कम चल रही है तो आप तय कर सकते हैं कि आप इसे ऑप्टिमाइज़ करना चाहते हैं या नहीं।

“अधिकतम दस्तावेज़ लौटाए गए” के अनुसार क्रमबद्ध धीमी क्वेरी

यह दृश्य उन प्रश्नों को प्रस्तुत करता है (अवरोही क्रम में) जो सबसे अधिक परिणाम दे रहे हैं। बहुत सारे परिणाम लौटाने से अक्सर सिस्टम पर नेटवर्क लोड होता है। आपको यह भी सुनिश्चित करना चाहिए कि आप केवल वही फ़ील्ड लौटा रहे हैं जो आपको दस्तावेज़ से चाहिए और सभी फ़ील्ड नहीं।

धीमी क्वेरी “रीड लॉक” के अनुसार क्रमित करें

यह दृश्य (अवरोही क्रम में) उन प्रश्नों को प्रस्तुत करता है जो सूक्ष्म-सेकंड में अधिकतम रीड लॉक समय का उपभोग कर रहे हैं। यदि आप WiredTiger स्टोरेज इंजन का उपयोग कर रहे हैं तो यह आमतौर पर कोई समस्या नहीं है क्योंकि WiredTiger दस्तावेज़ स्तर लॉकिंग को नियोजित करता है।

“लॉक लिखें” के अनुसार क्रमित धीमी क्वेरी

यह दृश्य (अवरोही क्रम में) उन प्रश्नों को प्रस्तुत करता है जो सूक्ष्म-सेकंड में अधिकतम लेखन लॉक समय का उपभोग कर रहे हैं। यदि आप WiredTiger स्टोरेज इंजन का उपयोग कर रहे हैं तो यह आमतौर पर कोई समस्या नहीं है क्योंकि WiredTiger दस्तावेज़ स्तर लॉकिंग को नियोजित करता है।


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. कुल गिनती प्राप्त करने के लिए मोंगोडीबी में कुल योग कैसे प्राप्त करें?

  2. बाहरी इंजेक्शन हमलों से MongoDB को सुरक्षित करना

  3. मोंगोडीबी ड्रॉपइंडेक्स ()

  4. MongoDB के लिए ऑडिट लॉगिंग

  5. मोंगोडब - मोंगो और मोंगोड डेटाबेस चलाने के बीच अंतर