indexing in dbms in hindi, types of indexing in dbms in hindi, types of indexing kya hai in hindi,
indexing in dbms in hindi
- इंडेक्सिंग का उपयोग किसी डेटाबेस के प्रदर्शन को optimise करने के लिए किया जाता है, जब query process की जाती है, तो आवश्यक डिस्क access की संख्या को कम करके इसे किया जाता है।
- Index एक प्रकार की डेटा संरचना है। इसका उपयोग डेटाबेस तालिका में डेटा का शीघ्रता से पता लगाने और उस तक पहुंचने के लिए किया जाता है।
index structure in hindi:
कुछ डेटाबेस column का उपयोग करके index बनाए जा सकते हैं।
- डेटाबेस का पहला कॉलम search key है जिसमें तालिका की primary key या candidate key की एक प्रति शामिल है। प्राथमिक key की values को sorted order में संग्रहीत किया जाता है ताकि संबंधित डेटा को आसानी से access किया जा सके।
- डेटाबेस का दूसरा column डेटा reference है। इसमें disk block का पता रखने वाले pointers का एक set होता है जहां विशेष key की value पायी जा सकती है।
Indexing methods in hindi
ordered indices in hindi
आमतौर पर indices तेजी से खोज करने के लिए sort किए जाते हैं। जिन सूचकांकों को क्रमबद्ध किया जाता है, उन्हें ordered indices कहा जाता है।
उदाहरण : मान लीजिए कि हमारे पास हजारों रिकॉर्ड के साथ एक कर्मचारी तालिका है और जिनमें से प्रत्येक 10 bytes लंबा है। अगर उनकी ID 1, 2, 3 …. और इसी तरह शुरू होती है और हमें ID -543 के साथ छात्र को खोजना होगा।
- बिना इंडेक्स वाले डेटाबेस के मामले में, हमें डिस्क block को शुरू करने से लेकर 543 तक पहुंचने तक खोजना होगा। DBMS रिकॉर्ड को 543 * 10 = 5430 bytes पढ़ने के बाद पढ़ेगा।
- एक इंडेक्स के मामले में, हम इंडेक्स का उपयोग करके खोज करेंगे और DBMS 542 * 2 = 1084 bytes पढ़ने के बाद रिकॉर्ड को पढ़ेगा जो पिछले मामले की तुलना में बहुत कम हैं।
Primary index in hindi
- यदि तालिका की प्राथमिक key के आधार पर index बनाया जाता है, तो इसे primary index के रूप में जाना जाता है। ये प्राथमिक keys प्रत्येक रिकॉर्ड के लिए unique हैं और इनमें रिकॉर्ड्स के बीच 1: 1 संबंध हैं।
- जैसा कि प्राथमिक keys को क्रमबद्ध क्रम में संग्रहीत किया जाता है, तो search operation का प्रदर्शन काफी कुशल होता है।
- Primary index को दो प्रकारों में वर्गीकृत किया जा सकता है: dense index और sparse index।
Dense index in hindi
- Dense सूचकांक में डेटा फ़ाइल में प्रत्येक search key value के लिए एक इंडेक्स रिकॉर्ड होता है। यह खोज को तेज करता है।
- इसमें index table में रिकॉर्ड की संख्या मुख्य तालिका में रिकॉर्ड की संख्या के समान है।
- इंडेक्स रिकॉर्ड को स्वयं स्टोर करने के लिए इसे अधिक स्थान की आवश्यकता है। इंडेक्स रिकॉर्ड में डिस्क पर वास्तविक रिकॉर्ड के लिए search key और एक pointer है।
Sparse index in hindi
- डेटा फ़ाइल में, इंडेक्स रिकॉर्ड केवल कुछ वस्तुओं के लिए दिखाई देता है। प्रत्येक आइटम एक block की ओर इशारा करता है।
- इसमें, मुख्य तालिका में प्रत्येक रिकॉर्ड को point करने के बजाय, index एक अंतराल में मुख्य तालिका में रिकॉर्ड को point करता है।
Clustering index in hindi
- एक clustering index को एक आदेशित डेटा फ़ाइल के रूप में परिभाषित किया जा सकता है। कभी-कभी index गैर-प्राथमिक key columns पर बनाया जाता है जो प्रत्येक रिकॉर्ड के लिए unique नहीं हो सकता है।
- इस मामले में, रिकॉर्ड को तेज़ी से पहचानने के लिए, हम unique value प्राप्त करने और उनमें से index बनाने के लिए दो या अधिक columns को group करेंगे। इस विधि को clustering index कहा जाता है।
- जिन records में समान विशेषताएँ होती हैं, उन्हें समूहीकृत किया जाता है और इन समूहों के लिए index बनाए जाते हैं।
उदाहरण : मान लीजिए कि एक कंपनी में प्रत्येक विभाग में कई कर्मचारी होते हैं। मान लीजिए कि हम एक clustering index का उपयोग करते हैं, जहां सभी कर्मचारी जो एक ही विभाग के हैं, उन्हें single cluster के भीतर माना जाता है, और index pointers cluster को एक पूरे point के रूप में point करते हैं। यहाँ Dept_Id एक non unique key है।
पिछला स्कीमा थोड़ा confusing है क्योंकि एक डिस्क block रिकॉर्ड द्वारा साझा किया जाता है जो विभिन्न cluster से संबंधित हैं। यदि हम अलग-अलग समूहों के लिए अलग डिस्क block का उपयोग करते हैं, तो इसे बेहतर तकनीक कहा जाता है।
Secondary index in hindi
Sparse indexing में, जैसा कि table का आकार बढ़ता है, mapping का आकार भी बढ़ता है। इन मैपिंगों को आमतौर पर प्राथमिक मेमोरी में रखा जाता है ताकि address को पकड़ना तेज़ हो। फिर माध्यमिक मेमोरी मैपिंग से प्राप्त address के आधार पर वास्तविक डेटा की खोज करती है। यदि मैपिंग का आकार बढ़ता है, तो address को प्राप्त करना धीमा हो जाता है। इस मामले में, Sparse index कुशल नहीं होगा। इस समस्या को दूर करने के लिए, secondary indexing पेश किया जाता है।
Secondary indexing में, mapping के आकार को कम करने के लिए, indexing का एक और स्तर पेश किया जाता है। इस विधि में, columns के लिए विशाल range को शुरू में चुना जाता है ताकि पहले स्तर का mapping आकार छोटा हो जाए। फिर प्रत्येक श्रेणी को आगे छोटी श्रेणियों में विभाजित किया गया है। पहले स्तर की mapping प्राथमिक मेमोरी में संग्रहित की जाती है, जिससे कि पता तेजी से हो। दूसरे स्तर और वास्तविक डेटा की mapping माध्यमिक मेमोरी (हार्ड डिस्क) में संग्रहीत की जाती है।
उदाहरण के लिए:
- यदि आप आरेख में roll number 111 का रिकॉर्ड ढूंढना चाहते हैं, तो यह highest entry की खोज करेगा जो पहले स्तर के index में 111 से अधिक या उसके बराबर है। इस स्तर पर इसे 100 मिलेगा।
- फिर दूसरे index स्तर में, यह फिर से अधिकतम (111) <= 111 करता है और 110 हो जाता है। अब 110 पते का उपयोग करते हुए, यह डेटा block में जाता है और 111 मिलने तक प्रत्येक रिकॉर्ड खोजना शुरू कर देता है।
- इस तरीके से खोज की जाती है। सम्मिलित करना, update करना या delete भी उसी तरीके से किया जाता है।