UUID v7 जनरेटर
UUID वर्ज़न 7 यूनिक आइडेंटिफ़ायर जनरेट करें, जिनमें टाइमस्टैम्प शामिल होता है और इसलिए वे स्वाभाविक रूप से कालक्रम के अनुसार क्रमबद्ध रहते हैं — डेटाबेस की प्राइमरी की के रूप में उपयोगी। गणना आपके ब्राउज़र के क्रिप्टोग्राफ़िक API पर आधारित है, कुछ भी किसी सर्वर को नहीं भेजा जाता।
यह कैसे काम करता है
पूरी तरह रैंडम UUID v4 के विपरीत, UUID v7 आइडेंटिफ़ायर के पहले 48 बिट को मिलीसेकंड में Unix टाइमस्टैम्प पर रखता है, उसके बाद 74 क्रिप्टोग्राफ़िक रूप से सुरक्षित रैंडम बिट आते हैं। नतीजा: कुछ सेकंड के अंतर पर जनरेट किए गए दो UUID v7 लेक्सिकोग्राफ़िक क्रम में पास-पास रहते हैं, जिससे पूरी तरह बिखरे UUID v4 की तुलना में डेटाबेस इंडेक्स (B-tree) में इन्सर्शन का प्रदर्शन बेहतर होता है।
प्राइमरी की के रूप में UUID v4 की जगह UUID v7 को क्यों चुनें?
रैंडम UUID v4 बड़े पैमाने पर इन्सर्शन के दौरान B-tree इंडेक्स में काफ़ी फ़्रैगमेंटेशन पैदा करता है, क्योंकि हर नया आइडेंटिफ़ायर ट्री में किसी अप्रत्याशित जगह पर गिरता है। UUID v7 क्लासिक ऑटो-इंक्रीमेंट आइडेंटिफ़ायर की तरह समय के साथ बढ़ता है, फिर भी डेटाबेस से तालमेल बिठाए बिना क्लाइंट साइड पर जनरेट हो सकने का लाभ बनाए रखता है।
क्या UUID v7 से निर्माण की सटीक तिथि वापस पाई जा सकती है?
पहले 48 बिट में एन्कोड किया गया मिलीसेकंड टाइमस्टैम्प निकाला जा सकता है, और इस तरह आइडेंटिफ़ायर के जनरेट होने की लगभग (मिलीसेकंड तक) तिथि और समय मिल सकता है। अगर आपके संदर्भ में यह जानकारी संवेदनशील है, तो क्लासिक UUID v4 चुनें जो समय संबंधी कोई डेटा उजागर नहीं करता।
100% लोकल प्रोसेसिंग: हर आइडेंटिफ़ायर आपके ब्राउज़र में crypto.getRandomValues से गणना किया जाता है, बिना किसी नेटवर्क रिक्वेस्ट के।