DB को एक B-Tree . बनाए रखने की आवश्यकता है (या एक समान संरचना) कुंजी के साथ उन्हें आदेश देने के लिए।
यदि कुंजी को हैश किया गया है और इसे बी-ट्री में संग्रहीत किया गया है तो अद्वितीयता को तेजी से जांचना ठीक रहेगा। कुंजी का - कुंजी को अभी भी कुशलता से देखा जा सकता है। लेकिन आप श्रेणी . के लिए प्रभावी खोज नहीं कर पाएंगे डेटा का (उदा. LIKE
. के साथ) ) क्योंकि बी-ट्री अब स्ट्रिंग मान के अनुसार ऑर्डर नहीं किया गया है।
तो मुझे लगता है कि अधिकांश डीबी वास्तव में बी-ट्री में स्ट्रिंग को स्टोर करते हैं, जो (1) अधिक स्पेस ले सकता है संख्यात्मक मानों की तुलना में और (2) बी-ट्री को पुनः संतुलित . की आवश्यकता होती है यदि चाबियों को मनमाने क्रम में डाला जाता है (संख्यात्मक पीके के साथ बढ़ते मूल्य की कोई धारणा नहीं)।
जुर्माना व्यवहार में नगण्य से लेकर विशाल तक हो सकता है। यह सब उपयोग, पंक्तियों की संख्या, स्ट्रिंग कुंजी के औसत आकार, तालिका में शामिल होने वाले प्रश्नों आदि पर निर्भर करता है।