टूल

मुफ़्त ऑनलाइन UUID / ULID / NanoID Generator

अपने ब्राउज़र में UUID v4, UUID v1, ULID और NanoID तुरंत बनाएँ — एक साथ 100 IDs तक। 100% client-side, सर्वर पर कोई डेटा नहीं भेजा जाता।

पूरी generation Web Crypto API के माध्यम से स्थानीय रूप से आपके ब्राउज़र में होती है। कोई ID या टेक्स्ट कभी हमारे सर्वर पर नहीं भेजा जाता।

UUID क्या है?

UUID (Universally Unique Identifier) RFC 4122 में परिभाषित 128-bit label है। 5 × 10³⁶ से अधिक संभावित v4 values के कारण एक ही UUID दो बार बनने की संभावना अत्यंत कम है। UUIDs distributed systems को database rows, API resources और session tokens के लिए किसी central counter या coordinator के बिना unique identifiers बनाने देते हैं।

UUID v4 बनाम UUID v1 बनाम ULID बनाम NanoID

अपने उपयोग के लिए सही identifier चुनें:

UUID v4 (128-bit random)

पूरी तरह random। सबसे अधिक उपयोग होने वाला format, जिसे सभी आधुनिक databases और languages मूल रूप से support करते हैं। कोई temporal information नहीं। crypto.randomUUID() से बनाएँ।

UUID v1 (timestamp-based) पुराना प्रारूप

समय के क्रम में sorting के लिए timestamp encode करता है। नए systems के लिए deprecated — मूल spec MAC address उजागर करती है, जिससे privacy concerns होते हैं। sortability चाहिए तो ULID उपयोग करें।

ULID (Universally Unique Lexicographically Sortable)

creation time के अनुसार lexicographically sortable — Prisma, Drizzle या किसी ORM के साथ database primary key के लिए आदर्श। 26-char Crockford Base32, URL-safe और case-insensitive।

NanoID (compact URL-safe ID)

केवल 21 characters (UUID के 36 के मुकाबले), URL-safe alphabet (A-Za-z0-9_-)। लंबाई configurable। URL slugs, short tokens और generated identifiers के लिए उपयुक्त।

हर Identifier का उपयोग कब करें

सही ID format चुनने के व्यावहारिक निर्देश:

UUID v4 → डेटाबेस Primary Keys

PostgreSQL (uuid type), MySQL (CHAR(36)) या UUIDs को मूल रूप से support करने वाले किसी database में UUID v4 को primary key के रूप में उपयोग करें। सभी प्रमुख ORMs इसे support करते हैं।

UUID v1 → समय-क्रमित Log Files

वे legacy systems जिन्हें log file naming या event ordering के लिए timestamp-embedded IDs चाहिए। नए projects के लिए ULID को प्राथमिकता दें।

ULID → ORMs के साथ Sortable Primary Keys

जब अलग timestamp column के बिना creation time के अनुसार sort होने वाली primary keys चाहिए, तब ULID उपयोग करें। Prisma, Drizzle ORM और TypeORM के साथ सीधे काम करता है।

NanoID → URL Shorteners और Compact Tokens

URL slugs, short-lived tokens और जहाँ compactness तथा URL-safety महत्वपूर्ण हो वहाँ NanoID उपयोग करें। collision probability और readability के बीच संतुलन के लिए लंबाई समायोजित करें।

अक्सर पूछे जाने वाले प्रश्न

UUID 128-bit identifier है जिसे dashes सहित 36 hex characters में encode किया जाता है (e.g., 550e8400-e29b-41d4-a716-446655440000)। ULID भी 128 bits है, लेकिन 26 Crockford Base32 characters में encode होता है और creation time के अनुसार lexicographically sortable है। ULID UUID v1 का आधुनिक विकल्प है जो MAC address exposure से बचता है।

सैद्धांतिक रूप से हाँ, लेकिन संभावना नगण्य है। UUID v4 में 122 bits randomness होती है, जिससे लगभग 5.3 × 10³⁶ संभावित values मिलती हैं। collision की 50% संभावना के लिए लगभग 2.7 × 10¹⁸ UUIDs बनाने होंगे — किसी भी वास्तविक system से बहुत अधिक।

हाँ। distributed systems में UUID v4 व्यापक रूप से primary key के रूप में उपयोग होता है। sequential integers की तुलना में मुख्य trade-off B-tree indexes में index fragmentation है। ordered inserts महत्वपूर्ण हों तो ULID पर विचार करें, जो chronologically sort होता और fragmentation घटाता है।

NanoID URL-safe alphabet से छोटी IDs बनाता है (default 21 characters, UUID के 36 के मुकाबले)। लंबाई configurable है: छोटी IDs में collision probability अधिक, लंबी IDs अधिक सुरक्षित। URLs, slugs और compact tokens के लिए NanoID आदर्श है जहाँ UUID का 36-character format बहुत लंबा हो।