UUID v6 क्या है?
UUID संस्करण 6 एक समय-आधारित 128-बिट पहचानकर्ता (36-अक्षर स्ट्रिंग) है जिसे UUID v1 में सुधार के रूप में प्रस्तावित किया गया है। यह निम्नलिखित से बना है:
- पुनः क्रमित टाइमस्टैम्प: सबसे महत्वपूर्ण से सबसे कम महत्वपूर्ण तक 60-बिट टाइमस्टैम्प
- क्लॉक अनुक्रम: क्लॉक समायोजन के लिए 14-बिट काउंटर
- नोड आईडी: 48-बिट मान (आमतौर पर MAC पता)
फ़ॉर्मेट उदाहरण: 1eb527d6-e927-6511-9a03-0242ac130003
UUID v6 कैसे काम करता है
- वर्तमान टाइमस्टैम्प की गणना करें (1582-10-15 से 100ns अंतराल)
- बेहतर क्रमबद्धता के लिए टाइमस्टैम्प बिट्स को पुनः क्रमित करें (सबसे महत्वपूर्ण बिट्स पहले)
- अद्वितीयता के लिए 14-बिट क्लॉक अनुक्रम प्राप्त/इंक्रिमेंट करें (यदि क्लॉक पीछे चला जाता है)
- 48-बिट नोड आईडी प्राप्त करें (आमतौर पर MAC पता से)
- संस्करण बिट्स (0110) और वेरिएंट बिट्स (10) सेट करें
- 32 हेक्स अंकों के रूप में असेंबल करें जिसमें हाइफ़न: 8-4-4-4-12 फ़ॉर्मेट
फायदे और विचार
Advantages | Considerations |
---|---|
|
|
UUID v6 संरचना
Bits | Content |
---|---|
0-47 | टाइमस्टैम्प के उच्च 48 बिट्स |
48-51 | संस्करण (v6 के लिए 0110) |
52-59 | टाइमस्टैम्प के निम्न 8 बिट्स |
60-63 | टाइमस्टैम्प के उच्च 4 बिट्स |
64-65 | वेरिएंट (RFC4122 के लिए 10) |
66-79 | क्लॉक अनुक्रम (14 बिट्स) |
80-127 | नोड आईडी (48 बिट्स) |
UUID v6 बनाम अन्य संस्करण
Version | आधारित | उपयोग मामला | Privacy |
---|---|---|---|
UUID v1 | समय + MAC | समय-क्रमित आईडी | ⚠️ MAC प्रकट करता है |
UUID v3 | Namespace + MD5 | निर्धारित आईडी | ✅ निजी |
UUID v4 | Random | सुरक्षित रैंडम आईडी | ✅ निजी |
UUID v5 | Namespace + SHA-1 | निर्धारित आईडी | ✅ निजी |
UUID v6 | समय (पुनः क्रमित) | क्रमबद्ध आईडी | ⚠️ MAC प्रकट करता है |
UUID v7 | समय + रैंडम | क्रमबद्ध आईडी | ✅ निजी |
सामान्य उपयोग मामले
- समय-क्रमित डेटाबेस कुंजी: कालानुक्रमिक क्रमबद्धता के लिए
- वितरित डेटाबेस: समय-क्रमित इंडेक्सिंग के साथ
- लॉग प्रविष्टियाँ: प्राकृतिक कालानुक्रमिक क्रम के साथ
- ऑडिट ट्रेल्स: एम्बेडेड टाइमस्टैम्प के साथ
- संदेश कतारबद्धता: समय-आधारित प्रसंस्करण के लिए
- लेन-देन रिकॉर्ड: कालानुक्रमिक क्रम के साथ
अक्सर पूछे जाने वाले प्रश्न
UUID v1 और v6 में क्या अंतर है?
UUID v6 UUID v1 से टाइमस्टैम्प बिट्स को पुनः व्यवस्थित करता है ताकि यह स्वाभाविक रूप से लैक्सिकोग्राफिकल क्रम में क्रमबद्ध हो सके। सामग्री v1 के समान है, केवल पुनः क्रमित।
क्या UUID v6 एक आधिकारिक मानक है?
UUID v6 वर्तमान में प्रस्तावित RFC 4122bis दस्तावेज़ में एक ड्राफ्ट विनिर्देशन है। यह अभी तक एक आधिकारिक RFC मानक नहीं है लेकिन कई UUID लाइब्रेरीज़ में लागू है।
क्या मैं UUID v6 से निर्माण समय निकाल सकता हूँ?
हाँ। टाइमस्टैम्प घटक बिट्स 0-59 से निकाला जा सकता है और datetime मान में परिवर्तित किया जा सकता है।
क्या UUIDs v6 निर्माण समय द्वारा क्रमबद्ध हैं?
हाँ। v1 के विपरीत, UUID v6 टाइमस्टैम्प बिट्स को सबसे महत्वपूर्ण से सबसे कम महत्वपूर्ण क्रम में रखता है, जिससे सीधे लैक्सिकोग्राफिकल (स्ट्रिंग) तुलना कालानुक्रमिक क्रम से मेल खाती है।
क्या UUID v6 मेरा MAC पता प्रकट करता है?
डिफ़ॉल्ट रूप से, हाँ। UUID v1 की तरह, अधिकांश कार्यान्वयन नोड आईडी के लिए MAC पता का उपयोग करते हैं। गोपनीयता-केंद्रित कार्यान्वयन इसके बजाय रैंडम नोड आईडी का उपयोग कर सकते हैं।