uuid

이재문·2021년 11월 30일
0
post-thumbnail

프로젝트 중 주문번호를 생성하기 위해 랜덤한 숫자의 조합을 만들기 위한 모듈로 uuid를 사용하려고 한다.

uuid 란?

uuid(Universal Unique Identifier: 전역 고유 식별자)는 네트워크 상에서 고유성이 보장되는 id를 만들기 위해 랜덤으로 번호를 생성해주는 모듈이다. 중복될 확률은 100%는 아니지만 무시 할 수 있을 정도로 가깝다.
uuid는 128비트 숫자이며, 32자리 16진수로 표현한다.

    8    -    4    -    4    -    4    -    12   
  • time_low : 시간의 low 32bit를 부여하는 정수
  • time_mid : 시간의 middle 32bit를 부여하는 정수
  • time_hi_and_version
  • clock_seq_hi_and_resclock_seq_low
  • Node - 48bit의 최상위 Node id
    패턴의 형태로 5개의 그룹으로 구분한다.

uuid에는 1,3,4,5로 4개의 종류가 있다. 대체로 1과 4를 가장 많이 사용하고, 1 보다 4를 많이 사용한다.
uuid1 ~ 5

uuid.uuid1(node=None, clock_seq=None)
  • 호스트ID, 시퀀스, 현재시간을 기준으로 uuid를 생성합니다.
uuid.uuid3(namespace, name)
  • 네임 스페이스 UUID와 이름의 MD5 해시에서 UUID를 생성합니다.
uuid.uuid4()
  • 랜덤 UUID를 생성합니다. (추천)
uuid.uuid5(namespace, name)
  • 네임 스페이스 UUID와 이름에 SHA-1 해시로 UUID를 생성합니다.
profile
이제부터 백엔드 개발자

0개의 댓글