शॉर्ट UUID क्या है?
शॉर्ट UUID एक तकनीक है जो मानक 128-बिट UUIDs को छोटे, URL-अनुकूल स्ट्रिंग्स में संपीड़ित करती है। इसमें आमतौर पर शामिल होता है:
- बेस रूपांतरण: UUID को बेस-16 (हेक्स) से एक उच्चतर बेस (आमतौर पर बेस-58 या बेस-62) में कनवर्ट करना
- कैरेक्टर सेट चयन: URL-सुरक्षित कैरेक्टर सेट का उपयोग करना जिनमें कोई अस्पष्ट कैरेक्टर नहीं होते
- लॉसलैस संपीड़न: मूल UUID से सभी जानकारी को संरक्षित करना
उदाहरण रूपांतरण:
- स्टैंडर्ड UUID:
f47ac10b-58cc-4372-a567-0e02b2c3d479
- शॉर्ट UUID (बेस-58):
2kLrTdCQVWFjc7dYXzzB5A
शॉर्ट UUID कैसे काम करता है
- मानक UUID से हाइफ़न हटाएं
- परिणामी 32-कैरेक्टर हेक्स स्ट्रिंग को एक दशमलव संख्या में कनवर्ट करें
- दशमलव संख्या को एक उच्चतर बेस (58, 62, 64, आदि) में कनवर्ट करें
- सुनिश्चित करने के लिए यदि आवश्यक हो तो परिणाम को पैड करें कि लंबाई सुसंगत हो
सामान्य एन्कोडिंग वर्णमालाएँ शामिल हैं:
- Base-58: अस्पष्ट कैरेक्टर के बिना अल्फ़ान्यूमेरिक (0, O, I, l को छोड़कर)
- Base-62: सभी अल्फ़ान्यूमेरिक कैरेक्टर (a-z, A-Z, 0-9)
- Base-64: अल्फ़ान्यूमेरिक प्लस दो विशेष कैरेक्टर (अक्सर + और /)
फायदे और विचार
Advantages | Considerations |
---|---|
|
|
लंबाई तुलना
Format | Length | कैरेक्टर सेट | Example |
---|---|---|---|
स्टैंडर्ड UUID | 36 कैरेक्टर | हेक्स + हाइफ़न | f47ac10b-58cc-4372-a567-0e02b2c3d479 |
हेक्स (बिना हाइफ़न के) | 32 कैरेक्टर | 0-9, a-f | f47ac10b58cc4372a5670e02b2c3d479 |
Base-58 | 22 कैरेक्टर | कोई 0, O, I, l नहीं | 2kLrTdCQVWFjc7dYXzzB5A |
Base-62 | ~22 कैरेक्टर | Alphanumeric | 3pqLYdcw9TGKxNVgeO0gOd |
Base-64 | ~22 कैरेक्टर | अल्फ़ान्यूमेरिक + प्रतीक | 9HrBC1jMQ3KlZw4CssPUeQ== |
कॉमन बेस-58 वर्णमाला
बेस-58 वर्णमाला को इस तरह डिज़ाइन किया गया है कि जब इसे फिक्स्ड-विथ और प्रोपोर्शनल फोंट्स दोनों में प्रदर्शित किया जाता है तो यह दृश्य रूप से अस्पष्ट न हो:
कैरेक्टर सेट | Content |
---|---|
Numbers | 1-9 (0 को छोड़कर) |
अपरकेस अक्षर | A-Z (I, O को छोड़कर) |
लोअरकेस अक्षर | a-z (l को छोड़कर) |
कैरेक्टर: 123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz
सामान्य उपयोग के मामले
- URL शॉर्टनिंग: अधिक कॉम्पैक्ट URL पैरामीटर
- पब्लिक-फेसिंग IDs: उपयोगकर्ता या सामग्री पहचानकर्ता
- QR कोड अनुकूलन: कम कैरेक्टर = सरल कोड
- मोबाइल एप्लिकेशन: कम डेटा ट्रांसमिशन
- API डिज़ाइन: साफ-सुथरे, अधिक कॉम्पैक्ट संसाधन पहचानकर्ता
- सोशल शेयरिंग: अधिक उपयोगकर्ता-अनुकूल लिंक
अक्सर पूछे जाने वाले प्रश्न
क्या शॉर्ट UUIDs मानक UUIDs जितने यूनिक हैं?
हाँ। शॉर्ट UUIDs केवल उसी 128-बिट मान का एक अलग प्रतिनिधित्व हैं। रूपांतरण लॉसलैस है, जो मानक UUIDs की सभी यूनिकनेस गुणों को संरक्षित करता है।
क्या मैं मानक और शॉर्ट UUID प्रारूपों के बीच रूपांतरण कर सकता हूँ?
हाँ। रूपांतरण द्विदिश है - आप एक मानक UUID को शॉर्ट UUID में एन्कोड कर सकते हैं और इसे बिल्कुल उसी मानक UUID में डिकोड कर सकते हैं।
कौन सा बेस एन्कोडिंग सबसे अधिक अनुशंसित है?
बेस-58 को अक्सर प्राथमिकता दी जाती है क्योंकि यह अस्पष्ट कैरेक्टर (0/O और l/I) से बचता है और URL-सुरक्षित रहता है बिना URL एन्कोडिंग की आवश्यकता के।
शॉर्ट UUIDs कितने छोटे होते हैं?
मानक UUIDs 36 कैरेक्टर के होते हैं (हाइफ़न के साथ)। शॉर्ट UUIDs आमतौर पर 22 कैरेक्टर के होते हैं जब बेस-58/62/64 एन्कोडिंग का उपयोग किया जाता है, जो लगभग 40% की कमी है।
क्या मुझे अपने डेटाबेस में शॉर्ट UUIDs स्टोर करने चाहिए?
सामान्यतः अनुशंसित है कि डेटाबेस में मानक UUID प्रारूप स्टोर करें और केवल उपयोगकर्ताओं को दिखाने या URLs में उपयोग करने के समय शॉर्ट UUID में कनवर्ट करें। यह डेटाबेस UUID प्रकारों के साथ बेहतर संगतता प्रदान करता है।