UUID란?
UUID(범용 고유 식별자)는 전 세계적으로 고유함이 보장되는 128비트 식별자입니다. UUID의 정의, 형식, 버전, 활용법을 알아보세요.
Definition
Universally Unique Identifier (범용 고유 식별자)UUID는 중앙 관리 기관 없이도 전 세계적으로 고유함이 보장되는 128비트 식별자입니다. 분산 시스템에서 ID 충돌 없이 데이터를 식별하는 데 이상적입니다.
UUID 형식
UUID는 이렇게 생겼습니다: 550e8400-e29b-41d4-a716-446655440000 32개의 16진수 문자를 하이픈으로 5개 그룹(8-4-4-4-12)으로 나눈 형태입니다. 표준 표기는 소문자입니다.
UUID 버전
UUID에는 여러 버전이 있습니다: • v1 — 타임스탬프 + MAC 주소 기반 • v3 — 네임스페이스의 MD5 해시 • v4 — 완전 랜덤 생성 (가장 널리 사용) • v5 — 네임스페이스의 SHA-1 해시 UUID v4가 단순하고 빠르며 사실상 충돌이 불가능해 가장 많이 사용됩니다.
UUID는 어디에 쓰이나요?
UUID의 주요 용도: • 분산 시스템의 데이터베이스 기본 키 • 중앙 카운터 없이 레코드 식별 • 파일명, 세션 토큰, API 키 • 여러 소스의 데이터 병합 시 ID 충돌 방지
Try it yourself
UUID 생성하기UUID에 대하여
UUID는 RFC 4122로 표준화되어 있습니다. UUID v4 두 개가 충돌할 확률은 천문학적으로 낮습니다. 초당 10억 개씩 85년 동안 생성해야 50% 확률로 충돌이 발생합니다.
FAQ
- UUID와 GUID의 차이는?
- GUID(Globally Unique Identifier)는 UUID 표준의 Microsoft 구현입니다. 기능적으로 동일하며, GUID는 Windows/COM 환경의 용어, UUID는 표준 용어입니다.
- UUID가 중복될 수 있나요?
- 이론적으로는 가능하지만, UUID v4는 122비트 랜덤값으로 5.3×10³⁶개의 가능한 값이 있어 실제로는 불가능에 가깝습니다.
- UUID를 데이터베이스 기본 키로 써도 되나요?
- 네, 특히 분산 시스템에서 유용합니다. 단, 정수(int, 4바이트)에 비해 저장 공간(16바이트)이 크고 순차가 아니라 인덱스 성능이 약간 낮을 수 있습니다.