Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> डेटाबेस

उन्नत MongoDB ऑप्टिमाइज़ेशन: भाग 2

मूल रूप से Tricore द्वारा प्रकाशित: 24 अगस्त, 2017

इस श्रृंखला के भाग 1 में, हमने MongoDB का उपयोग करने के लिए कुछ टिप्स साझा किए। भाग 2 में, हम कई और MongoDB विषयों को कवर करते हैं, जिनमें ऑप्टिमाइज़ेशन, प्रदर्शन, गति, इंडेक्सिंग, स्कीमा डिज़ाइन और डेटा सुरक्षा शामिल हैं।

टिप 1: डेवलपमेंट में --notablescan विकल्प का उपयोग करना सीखें (लेकिन प्रोडक्शन में नहीं)

उन्नत MongoDB ऑप्टिमाइज़ेशन: भाग 2

स्रोत: www.percona.com

MongoDB में एक --notablescan विकल्प है जो तब एरर लौटाता है जब एक क्वेरी को फुल टेबल स्कैन करने की आवश्यकता होती है। यह विकल्प डेवलपमेंट वातावरण में उपयोगी हो सकता है यदि आप सुनिश्चित करना चाहते हैं कि आपकी सभी क्वेरी इंडेक्स को हिट कर रही हैं। हालांकि, हम इसे प्रोडक्शन वातावरण में उपयोग करने की अनुशंसा नहीं करते क्योंकि यह प्रदर्शन समस्याएं पैदा कर सकता है। समस्या यह है कि कई सरल प्रशासनिक कार्यों के लिए टेबल स्कैन की आवश्यकता होती है। यह विकल्प आपको अपने डेटाबेस में उन कलेक्शन की सूची देखने में सक्षम बनाता है जिनके लिए फुल टेबल स्कैन की आवश्यकता होती है।

टिप 2: एक ही शेल से सभी सर्वर और डेटाबेस प्रबंधित करें

डिफ़ॉल्ट रूप से, MongoDB localhost: 27017 से कनेक्ट होता है। आप स्टार्टअप पर mongo host:port/database चलाकर किसी भी सर्वर से कनेक्ट कर सकते हैं। आप शेल के भीतर कई सर्वर या डेटाबेस से भी कनेक्ट कर सकते हैं।

उदाहरण के लिए, मान लें कि हमारे पास एक एप्लिकेशन है जो डीलर के डेटाबेस और डिस्ट्रीब्यूटर के डेटाबेस दोनों का उपयोग करता है। MongoDB के साथ, हम एक ही शेल के भीतर दोनों डेटाबेस के बीच आगे-पीछे स्विच कर सकते हैं।

टिप 3: JavaScript जानें

जब आप किसी ऐसी भाषा का उपयोग कर रहे होते हैं जिसका अपना बेहतरीन शेल होता है, तो आपको JavaScript® से परिचित होना चाहिए। JavaScript भाषा MongoDB उपयोगकर्ताओं के बीच आम है क्योंकि यह जानकारी तक पहुंचने का सबसे तेज़ और सर्वोत्तम तरीका है। JavaScript एक बहुत ही लचीली और शक्तिशाली भाषा है जिसमें उत्कृष्ट विशेषताएं हैं जो आपको शेल से अधिकतम लाभ प्राप्त करने में मदद करेंगी।

टिप 4: सर्वरों का इंस्टेंट-इन-टाइम बैकअप लें

जर्नलिंग सक्षम के साथ डेटाबेस का बैकअप लेने के लिए, आप या तो फाइल सिस्टम स्नैपशॉट ले सकते हैं या सामान्य fsync+lock और फिर डंप कर सकते हैं। ध्यान दें कि आप fsync और लॉकिंग के बिना सभी फाइलों को कॉपी नहीं कर सकते, क्योंकि कॉपी करना एक तात्कालिक ऑपरेशन नहीं है। यदि जर्नल फाइलों की कॉपी और बैकअप अलग-अलग वॉल्यूम पर रहते हैं, तो बाद में बैकअप बेकार हो सकते हैं।

टिप 5: सिंगल क्वेरी से डेटा लाने का प्रयास करें

एप्लिकेशन यूनिट शब्द का उपयोग कुछ प्रकार के एप्लिकेशन कार्य के लिए किया जाता है। एक एप्लिकेशन यूनिट अनिवार्य रूप से आपके एप्लिकेशन द्वारा किए जाने वाले कार्य की एक असतत इकाई है जिसमें डेटाबेस एक्सेस करना शामिल हो सकता है। आपको MongoDB स्कीमा को प्रति एप्लिकेशन यूनिट एक क्वेरी करने के लिए डिज़ाइन करना चाहिए।

यदि आपके पास वेब या मोबाइल एप्लिकेशन है, तो आप एप्लिकेशन यूनिट को बैक एंड के अनुरोध के रूप में सोच सकते हैं।

यहां कुछ अन्य उदाहरण दिए गए हैं:

  • डेस्कटॉप एप्लिकेशन के लिए, एक एप्लिकेशन यूनिट उपयोगकर्ता-क्लाइंट इंटरैक्शन को संदर्भित कर सकती है।

  • एनालिटिक्स सिस्टम के लिए, एक एप्लिकेशन यूनिट डैशबोर्ड लोड को संदर्भित कर सकती है।

निष्कर्ष

MongoDB एक तेज़, मजबूत और अत्यधिक स्केलेबल डेटाबेस है। यह कई प्लेटफॉर्म पर काम करता है और इष्टतम उपयोग के लिए कई भाषा ड्राइवर हैं।

MongoDB हर दिन अधिक लोकप्रिय हो रहा है। MongoDB की मूल बातें समझना और इसका अच्छी तरह से उपयोग करना किसी भी डेवलपर के लिए एक शानदार कदम है।

क्या आप MongoDB का उपयोग करना सीख रहे हैं? फीडबैक टैब का उपयोग करके अपने अनुभव के बारे में बताएं।

  1. MongoDB Compass खोजें: निर्बाध डेटा प्रबंधन के लिए आपका विज़ुअल टूल MongoDB Compass खोजें: निर्बाध डेटा प्रबंधन के लिए आपका विज़ुअल टूल

    अवलोकन यह पोस्ट MongoDB® के लिए GUI, जिसे MongoDB Compass के नाम से जाना जाता है, का परिचय देती है। Compass आपको MongoDB क्वेरी सिंटैक्स के किसी औपचारिक ज्ञान के बिना अपने MongoDB डेटा का विश्लेषण और समझने की अनुमति देता है। आप क्वेरी प्रदर्शन को अनुकूलित करने, इंडेक्स प्रबंधित करने, और डॉक्यूमेंट व

  1. MongoDB में कोड इंजेक्शन हमलों को रोकना: एक डेवलपर गाइड MongoDB में कोड इंजेक्शन हमलों को रोकना: एक डेवलपर गाइड

    मूल रूप से 5 मार्च, 2019 को प्रकाशित यदि आप एक एप्लिकेशन डेवलपर, डेटाबेस एडमिनिस्ट्रेटर (DBA), या किसी भी प्रकार के टेक्नोलॉजिस्ट हैं, तो कोड इंजेक्शन आपके रडार पर होना चाहिए। आपके पास एक सुरक्षित क्लाउड वातावरण है। आपके पास डेटाबेस एक्सेस लॉक्ड डाउन है। लेकिन आपके एप्लिकेशन कोड का क्या? हालांकि इस

  1. MongoDB में अनयूज्ड इंडेक्स की पहचान कैसे करें इष्टतम प्रदर्शन के लिए MongoDB में अनयूज्ड इंडेक्स की पहचान कैसे करें इष्टतम प्रदर्शन के लिए

    संस्करण 3.2 से शुरू होकर, MongoDB हर इंडेक्स के लिए उपयोग के आंकड़ों को ट्रैक करता है। इन आंकड़ों तक पहुंचने के लिए, MongoDB $indexStats एग्रीगेशन पाइपलाइन चरण प्रदान करता है। यहां MongoDB में अनयूज्ड इंडेक्स खोजने पर छह विचार दिए गए हैं। उदाहरण के लिए, निम्न कमांड test.foo कलेक्शन के लिए इंडेक्स आं