2012-11-20 43 views
20

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

कोई भी अंतर को स्पष्ट कर सकता है?

+4

हैशिंग इंडेक्सिंग (या _access method_ का एक प्रकार) है; पेड़ (बी पेड़, आदि) एक और हैं। –

उत्तर

12

अनुक्रमण क्या है?

इंडेक्सिंग कई क्षेत्रों पर कई रिकॉर्ड सॉर्ट करने का एक तरीका है। किसी तालिका में किसी फ़ील्ड पर एक इंडेक्स बनाना एक और डेटा स्ट्रक्चर बनाता है जिसमें फ़ील्ड मान होता है, और पॉइंटर रिकॉर्ड से संबंधित होता है। इस सूचकांक संरचना को तब क्रमबद्ध किया जाता है, जिससे बाइनरी खोजों को निष्पादित किया जा सकता है।

हैशिंग क्या है?

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

मुझे लगता है कि यह आपके संदेह को स्पष्ट कर सकता है।

+0

यदि आपके पास नए रिकॉर्ड जोड़े जा रहे हैं, तो इंडेक्स संरचना को सॉर्ट करना महंगी हो जाएगा। आप यह भी उल्लेख कर सकते हैं कि इसके बजाय एक बी + पेड़ का उपयोग इंडेक्सिंग कुंजी तक त्वरित पहुंच को सक्षम करने के लिए डेटा व्यवस्थित करने के लिए किया जा सकता है। – adijo

10

हैश एक इंडेक्स का प्रकार है: इसका उपयोग किसी कुंजी के आधार पर रिकॉर्ड का पता लगाने के लिए किया जा सकता है - लेकिन यह रिकॉर्ड के किसी भी क्रम को सुरक्षित नहीं करता है। हैश के आधार पर, कोई सफल या पिछले तत्व को पुन: सक्रिय नहीं कर सकता है। हालांकि, यह सूचकांक (डेटाबेस के संदर्भ में)

2
  • हैशिंग गारंटी नहीं देता है कि अलग-अलग मान अलग-अलग पते पर हैंश होगा।
  • हैशिंग में टक्कर है।
  • ओवरफ़्लो में परिणाम छेड़छाड़ करना।
  • डेटा & का पता लगाने के लिए सूचकांक संरचना तक पहुंचने की आवश्यकता नहीं है तो डीबी फ़ाइल से डेटा पढ़ें।
  • इंडेक्सिंग को परिभाषित करने के लिए कमांड है लेकिन हैशिंग के लिए नहीं।
+4

मुझे लगता है कि हैशिंग और इंडेक्सिंग के बीच सबसे बड़ा अंतर, जो आपका उत्तर और कई अन्य याद करते हैं, यह है कि * अधिकांश * इंडेक्सिंग योजनाएं "निकट" मैचों को क्रमबद्ध करने या ढूंढने के लिए उपयुक्त हैं, जबकि हैशिंग आमतौर पर "सटीक" ढूंढने के अलावा किसी अन्य चीज़ के लिए बेकार है। मैचों। – supercat

0

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

संबंधित मुद्दे