किसी भी डेटाबेस की तरह, MongoDB में इंडेक्स आवश्यक डेटा संरचनाएं हैं। वे आसान डेटाबेस प्रश्नों को बढ़ावा देते हैं और आपको अपने संग्रह के एक हिस्से को अद्वितीय क्षेत्रों में संग्रहीत और व्यवस्थित करने देते हैं। इंडेक्स बिना किसी रोक-टोक के रेंज क्वेरी का भी समर्थन करते हैं।

यदि आपका ऐप MongoDB का उपयोग करता है, तो आप अपने प्रश्नों को तेज़ और अधिक कुशल बनाने के लिए अनुक्रमणिका की शक्ति का लाभ उठाना चाहते हैं। तो MongoDB में अनुक्रमणिका क्या हैं, और आप उन्हें कैसे बना सकते हैं?

MongoDB में इंडेक्स क्या हैं?

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

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

instagram viewer

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

उदाहरण के लिए, यदि आप किसी अनुक्रमणिका का उपयोग किए बिना डेटा बिंदुओं को उनकी प्रविष्टि तिथियों के आधार पर क्रमबद्ध करने का निर्णय लेते हैं, तो आप आमतौर पर क्वेरी मानदंड और सॉर्ट क्रम प्रदान करेंगे।

मान लें कि आप उनकी प्रविष्टियों की अवरोही तिथि के आधार पर एक निश्चित संख्या से अधिक आयु की व्यवस्था करना चाहते हैं। आपकी क्वेरी आम तौर पर इस तरह दिखती है:

db.collectionName.find({आयु: {$gt: 50}})। सॉर्ट ({तिथि: -1})

लेकिन अगर आपके पास प्रवेश तिथियों पर एक अनुक्रमणिका थी, तो आपको केवल क्वेरी मानदंड प्रदान करने की आवश्यकता होगी। ऐसा इसलिए है क्योंकि आपने इंडेक्स बनाते समय पहले ही तारीख को अवरोही क्रम में क्रमबद्ध कर लिया होगा।

उस स्थिति में, उपरोक्त क्वेरी बन जाती है:

db.collectionName.find({आयु: {$gt: 50}})

MongoDB में एक इंडेक्स कैसे बनाएं

आप इसके अंतर्निर्मित शेल इंटरफ़ेस का उपयोग करके MongoDB में अनुक्रमणिका बना सकते हैं। तो यही हम इस ट्यूटोरियल में उपयोग करेंगे।

फिर भी, अनुक्रमणिका अकेले मौजूद नहीं हैं। आपके पास होना चाहिए एक डेटाबेस और एक संग्रह बनाया इससे पहले कि आप एक इंडेक्स बना सकें।

जैसा कि हमने पहले उल्लेख किया है, अनुक्रमण की एक प्रमुख विशेषता यह है कि यह आपको अनुक्रमणिका निर्माण के दौरान छँटाई मानदंड निर्दिष्ट करने देता है।

उदाहरण के लिए, एक सूचकांक जो उम्र को उल्टे क्रम में व्यवस्थित करता है, ऐसा दिखता है:

db.userCollection.createIndex ({आयु: -1})

ऋणात्मक पूर्णांक (-1) कोड में MongoDB को उम्र को उल्टे क्रम में व्यवस्थित करने के लिए कहता है जब भी आप डेटा का उपयोग करके क्वेरी करते हैं उम्र अनुक्रमणिका। इस प्रकार, आपको प्रश्नों के दौरान सॉर्टिंग ऑर्डर निर्दिष्ट करने की आवश्यकता नहीं हो सकती है क्योंकि इंडेक्स पहले से ही इसे संभालता है।

आरोही रूप से एक ही फ़ील्ड की अनुक्रमणिका बनाने के लिए, प्रतिस्थापित करें -1 साथ 1:

db.userCollection.createIndex ({आयु: 1})

हालांकि MongoDB में अन्य इंडेक्स प्रकार हैं, एकल और यौगिक रूपों को बनाने का तरीका इस प्रकार है- क्योंकि वे सबसे अधिक उपयोग किए जाते हैं।

लेकिन इससे पहले कि हम आगे बढ़ें, सुनिश्चित करें कि आपने एक मोंगोडीबी स्थापित करें आपके पीसी पर सर्वर। यदि आप पहले ही ऐसा कर चुके हैं, तो MongoDB शेल खोलें और आगे बढ़ें।

MongoDB में सिंगल इंडेक्स बनाएं

MongoDB में एकल अनुक्रमण सीधा है। प्रारंभ करने के लिए, उस डेटाबेस का चयन करें जिसमें पहले से ही संग्रह हैं।

कहो हमारे डेटाबेस का नाम है मुओ:

MUO. का उपयोग करें

एक बार जब आप एक डेटाबेस चुनते हैं, तो इसका उपयोग करें क्रिएटइंडेक्स () एकल अनुक्रमणिका बनाने के लिए शेल में कमांड।

उदाहरण के लिए, किसी संग्रह में एकल उपयोगकर्ता नाम अनुक्रमणिका बनाने के लिए और इसे उल्टे क्रम में क्वेरी करने के लिए उपयोग करें:

db.collectionName.createIndex({उपयोगकर्ता नाम: -1})

MongoDB में मल्टीकी इंडेक्सिंग

एक जटिल डेटा सरणी में किसी फ़ील्ड को अनुक्रमित करने के लिए मल्टीकी इंडेक्स काम में आते हैं। उदाहरण के लिए, किसी संग्रह में उपयोगकर्ताओं का जटिल डेटा हो सकता है और उनकी जानकारी किसी अन्य सरणी में हो सकती है। उदाहरण के लिए, नाम, ऊंचाई और उम्र कहें।

आप इस तरह से उस सरणी में प्रत्येक उपयोगकर्ता की ऊंचाई पर एक बहु-कुंजी अनुक्रमणिका बना सकते हैं:

db.customers.createIndex({user.height: 1})

कद उपरोक्त कोड में का एक सबसेट है उपयोगकर्ता खेत।

कंपाउंड इंडेक्स बनाएं

एक यौगिक सूचकांक में एक से अधिक सूचकांक होते हैं। उदाहरण के लिए, ग्राहक संग्रह पर पते और उत्पाद प्रकार का एक मिश्रित सूचकांक बनाने के लिए:

db.customer.createIndex({पता: 1, उत्पाद: 1})

चूंकि आपने उपरोक्त अनुक्रमणिका बनाते समय कोई नाम नहीं दिया था, इसलिए MongoDB डिफ़ॉल्ट रूप से एक नाम बनाता है। लेकिन यह प्रत्येक इंडेक्स के नाम को अंडरस्कोर से अलग करता है। तो यह कम पठनीय है, खासकर यदि आपके पास एक कंपाउंड में दो से अधिक इंडेक्स हैं।

कंपाउंड इंडेक्स बनाते समय नाम निर्दिष्ट करने के लिए:

db.customers.createIndex ({स्थान: 1, उत्पाद: 1, वजन: -1}, {नाम: "myCompundIndex"})

एक संग्रह में सभी अनुक्रमणिका प्राप्त करें

संग्रह में सभी अनुक्रमणिका देखने के लिए:

db.CollectionName.getIndexes ()

उपरोक्त कोड सभी इंडेक्स को नामित संग्रह में आउटपुट करता है।

इंडेक्स के साथ अपने डेटाबेस को व्यवस्थित करें

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

MongoDB में CRUD संचालन कैसे करें

MongoDB को जानना मुश्किल है। सीआरयूडी के साथ चल रहे मैदान को हिट करें।

आगे पढ़िए

साझा करनाकलरवईमेल
संबंधित विषय
  • प्रोग्रामिंग
  • अजगर
  • प्रोग्रामिंग
  • डेटाबेस
लेखक के बारे में
इडोवु ओमिसोला (119 लेख प्रकाशित)

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

Idowu Omisola. की और फ़िल्में या टीवी शो

हमारे न्यूज़लेटर की सदस्यता लें

तकनीकी युक्तियों, समीक्षाओं, निःशुल्क ई-पुस्तकों और अनन्य सौदों के लिए हमारे न्यूज़लेटर से जुड़ें!

सब्सक्राइब करने के लिए यहां क्लिक करें