TIL: UUID के version और उनका उपयोग कब करें
(ntietz.com)-
UUID के अलग-अलग version
- UUID Version 1 (v1): timestamp, monotonic counter, और MAC address से बनाया जाता है
- UUID Version 2 (v2): security ID के लिए reserved है। इसके बारे में विस्तृत जानकारी ज्ञात नहीं है
- UUID Version 3 (v3): दिए गए data के MD5 hash से बनाया जाता है। DNS और URL को candidate data के रूप में सुझाया गया है
- UUID Version 4 (v4): पूरी तरह random data से बनाया जाता है। ज़्यादातर लोग UUID के रूप में इसी के बारे में सोचते हैं
- UUID Version 5 (v5): दिए गए data के SHA1 hash से बनाया जाता है। v3 की तरह DNS और URL को candidate data के रूप में सुझाया गया है
- UUID Version 6 (v6): timestamp, monotonic counter, और MAC address से बनाया जाता है। यह v1 वाला ही data है, लेकिन क्रम ऐसा बदला गया है कि creation time के अनुसार sort किया जा सके
- UUID Version 7 (v7): timestamp और random data से बनाया जाता है
- UUID Version 8 (v8): पूरी तरह user-defined हो सकता है (ज़रूरी version/variant field को छोड़कर)
-
कब उपयोग करें
- v4: जब random ID चाहिए हो। default choice के रूप में अच्छा है
- v7: जब sorting की ज़रूरत हो। उदाहरण के लिए, database key के रूप में उपयोग के लिए उपयुक्त है
- v5 या v8: जब आप unique data को UUID में शामिल करना चाहते हों। ज़रूरत पड़ने पर आपको इसका पता चल जाएगा
-
अन्य version के बारे में विवरण
- v7, v1 और v6 का बेहतर version है, इसलिए जहाँ संभव हो v7 का उपयोग करना अच्छा है। इस वजह से v1 या v6 आमतौर पर इस्तेमाल नहीं किए जाते
- v2, security-संबंधित उपयोगों के लिए reserved है। अगर आप इसका उपयोग कर रहे हैं, तो संभव है कि आप उसके विवरण साझा न कर सकें
- v3 को v5 ने replace कर दिया है। v5 अधिक मजबूत hash का उपयोग करता है
GN⁺ का सार
- UUID के कई version हैं, और हर version को एक खास उपयोग के लिए डिज़ाइन किया गया है
- v4 और v7 सबसे आम तौर पर उपयोग किए जाते हैं, जबकि v5 और v8 का उपयोग तब होता है जब data से जुड़ी विशेष आवश्यकताएँ हों
- UUID का version चुनना उपयोग के उद्देश्य पर निर्भर करता है; sorting चाहिए तो v7, और random ID चाहिए तो v4 अच्छा विकल्प है
- UUID के अलग-अलग version को समझने से प्रोजेक्ट के लिए सही UUID चुनने में मदद मिलती है
1 टिप्पणियां
Hacker News टिप्पणियाँ
UUID Version 2 (v2) security ID के लिए आरक्षित है, और इसके बारे में विस्तृत जानकारी ज़्यादा प्रसिद्ध नहीं है
UUID v2 की details RFC 9562 दस्तावेज़ में आसानी से मिल जाती हैं
UUID v7 का timestamp Databend में metadata files को जल्दी खोजने में उपयोगी है
काश short UUID के लिए भी कोई standard होता
73WakrfVbNJBaAmhQtEeDvयाbK7nP9xMUUID2 का उद्देश्य समझना मुश्किल है
UUID v4 मूल रूप से सिर्फ़ एक random byte generator है
MAC-आधारित versions का उपयोग नहीं करना चाहिए
SHA256 डेटा और counter का उपयोग करने वाला UUID उपयोगी हो सकता है
v7 का उपयोग करना बेहतर है
यह पढ़ने में दिलचस्प था