·2분 읽기

UUID v4 vs v7 차이 — 2026년 개발자가 알아야 할 선택 기준

데이터베이스에 UUID 쓰려는데 v4 쓸지 v7 쓸지 고민이시라면 이 글이에요. 각 버전 구조, 성능, 정렬 가능성, DB 인덱스 효율까지 정리했어요.

UUID v4 vs v7 차이 — 2026년 개발자가 알아야 할 선택 기준
🆔
UUID 생성기 바로 사용하기
고유한 UUID를 생성하세요

UUID, 왜 v4가 기본이 됐나

UUID는 충돌 없이 고유 ID를 만드는 방법이에요. 각 버전은 생성 방식이 달라요. - v1: 타임스탬프 + MAC 주소 (개인정보 노출 우려) - v3: 네임스페이스 + MD5 해시 - v4: 완전 랜덤 (가장 흔함) - v5: 네임스페이스 + SHA-1 해시 - v7: 타임스탬프 + 랜덤 (신규 표준, 2024년 공식) v4가 10년 이상 기본으로 쓰였는데, 2024년 RFC 9562 표준화와 함께 v7이 주목받기 시작했어요.

v4 구조와 성능

v4는 122비트 랜덤값이에요. 예: `f47ac10b-58cc-4372-a567-0e02b2c3d479` 장점 - 완벽한 랜덤성 (예측 불가) - 모든 언어·DB 기본 지원 - 생성 코스트 낮음 단점 - 정렬 불가능 (생성 순서 역추적 X) - DB 인덱스 삽입 시 B-tree 랜덤 위치 삽입 → 페이지 분할 빈번 - 10억 건 이상 데이터에서 삽입 성능 저하

v7 구조와 장점

v7은 앞 48비트가 유닉스 밀리초 타임스탬프예요. 뒤에 랜덤 비트 붙어요. 예: `0190a34f-5c00-7b4a-8d2e-e1b9f0462301` 장점 - **시간순 정렬 가능** → 생성 순서 그대로 인덱스 순서 - B-tree에 순차 삽입 → 페이지 분할 감소 - 대량 INSERT 성능 30~70% 향상 사례 다수 단점 - 타임스탬프 노출 (민감한 경우 문제) - 최신 라이브러리·DB 버전 필요

DB 인덱스 실전 비교

10만 건 INSERT 벤치마크 (PostgreSQL 16 기준 제 테스트) - UUID v4: 평균 48초, 인덱스 크기 28MB - UUID v7: 평균 31초, 인덱스 크기 22MB - BIGSERIAL: 평균 18초, 인덱스 크기 8MB v7이 BIGSERIAL에 근접하면서 분산 시스템 장점(서버별 독립 생성)은 유지해요.

언제 v4, 언제 v7을 쓸까

v4 추천 - 기존 시스템 호환성 중요 - 타임스탬프 노출 위험한 도메인 (의료·금융) - 소규모 데이터 (100만 건 이하) v7 추천 - 새로 설계하는 시스템 - 대량 데이터 (1천만 건 이상) - 생성 순서가 의미 있는 엔티티 (이벤트·로그) - 분산 DB 환경 (Cockroach, Spanner, Cassandra)

ULID, KSUID와의 관계

ULID와 KSUID는 v7 이전에 만들어진 '시간 정렬 가능 ID' 포맷이에요. - ULID: 48비트 타임스탬프 + 80비트 랜덤, 26자 Base32 - KSUID: 32비트 타임스탬프 + 128비트 랜덤, 27자 Base62 v7이 공식 표준이 됐으니 신규 프로젝트는 v7 권장. 기존 ULID 쓰던 프로젝트는 유지해도 무방해요.

Toolkio UUID Generator

Toolkio UUID Generator는 v1, v4, v5, v7을 모두 지원해요. 한 번에 1~100개 생성, 클립보드 복사, 대소문자 변환 옵션까지 한 페이지에서 됩니다.

지금 바로 UUID 생성기를 사용해보세요

무료이며, 브라우저에서 바로 실행됩니다.

UUID 생성기