UUID Generator

๋‹ค์–‘ํ•œ ๊ณ ์œ  ์‹๋ณ„์ž(UUID)๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ๋ณต์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

ID ์ƒ์„ฑ ์„ค์ •
์ƒ์„ฑํ•  ID์˜ ํ˜•์‹๊ณผ ์˜ต์…˜์„ ์„ ํƒํ•˜์„ธ์š”
์ƒ์„ฑ๋œ ID
๋žœ๋ค
์ƒ์„ฑ๋œ ID ๋ชฉ๋ก์ž…๋‹ˆ๋‹ค. ํด๋ฆญํ•˜์—ฌ ๋ณต์‚ฌํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
ID ํ˜•์‹ ์ƒ์„ธ ์ •๋ณด

RFC 4122 UUID ํ‘œ์ค€

UUID v1: ํƒ€์ž„์Šคํƒฌํ”„ + MAC ์ฃผ์†Œ
์‹œ๊ฐ„ ์ˆœ์„œ ๋ณด์žฅ, ๋จธ์‹  ์‹๋ณ„ ๊ฐ€๋Šฅ
UUID v3: ๋„ค์ž„์ŠคํŽ˜์ด์Šค + ์ด๋ฆ„ + MD5
๊ฒฐ์ •์ , ๋™์ผ ์ž…๋ ฅ์‹œ ๋™์ผ ๊ฒฐ๊ณผ
UUID v4: ์™„์ „ ๋žœ๋ค
๊ฐ€์žฅ ์ผ๋ฐ˜์ , 122๋น„ํŠธ ๋žœ๋ค
UUID v5: ๋„ค์ž„์ŠคํŽ˜์ด์Šค + ์ด๋ฆ„ + SHA-1
v3๋ณด๋‹ค ์•ˆ์ „ํ•œ ํ•ด์‹œ
UUID v6: ์‹œ๊ฐ„ ์ •๋ ฌ ๊ฐ€๋Šฅํ•œ v1
DB ์ธ๋ฑ์Šค ์ตœ์ ํ™”
UUID v7: ํƒ€์ž„์Šคํƒฌํ”„ + ๋žœ๋ค
์ตœ์‹  ํ‘œ์ค€, ์ •๋ ฌ ๊ฐ€๋Šฅ

๋Œ€์•ˆ ID ํ˜•์‹

NanoID: URL ์•ˆ์ „ํ•œ ID
๊ฐ€๋ณ€ ๊ธธ์ด, ์‚ฌ์šฉ์ž ์ •์˜ ๋ฌธ์ž์…‹
CUID2: ์ถฉ๋Œ ๋ฐฉ์ง€ ID
๋ถ„์‚ฐ ํ™˜๊ฒฝ ์•ˆ์ „, ๊ฐ€๋ณ€ ๊ธธ์ด
ULID: ์ •๋ ฌ ๊ฐ€๋Šฅํ•œ ID
26์ž, Base32 ์ธ์ฝ”๋”ฉ
KSUID: K-์ •๋ ฌ ๊ฐ€๋Šฅ ID
์‹œ๊ฐ„ ์ •๋ ฌ, Base62 ์ธ์ฝ”๋”ฉ
Snowflake: ๋ถ„์‚ฐ ์‹œ์Šคํ…œ ID
Twitter ๊ฐœ๋ฐœ, 64๋น„ํŠธ ์ •์ˆ˜

์‚ฌ์šฉ ๊ถŒ์žฅ์‚ฌํ•ญ

  • โ€ข ์ผ๋ฐ˜์ ์ธ ์šฉ๋„: UUID v4, UUID v7
  • โ€ข ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค ๊ธฐ๋ณธํ‚ค: UUID v7, ULID, KSUID
  • โ€ข URL์— ์‚ฌ์šฉ: NanoID, CUID2
  • โ€ข ๊ฒฐ์ •์  ์ƒ์„ฑ: UUID v3, UUID v5
  • โ€ข ๋ถ„์‚ฐ ์‹œ์Šคํ…œ: Snowflake, KSUID
  • โ€ข ์‹œ๊ฐ„ ์ˆœ์„œ ์ค‘์š”: UUID v6, UUID v7, ULID