사내 커리큘럼 진행 중, UUID
라는 개념을 알게 되었다.
Element
에 id를 부여해야 할 일이 생겼는데, id는 기본적으로 유일성이 보장되어야 할때 사용할 수 있는것이 바로 UUID
이다.
오전과 오후 내내 코딩만 했는데, 자바스크립트는 참 쉬운것 같지만 쉽지않은, 고려해야할게 많은 언어 같다.
짧게 요약하면 네트워크 상에서 고유성이 보장되는 id를 만들기 위한 표준 규약이다. 이는 주로 분산 컴퓨팅 환경에서 사용되는 식별자인데, 중앙관리시스템이 있는 환경이라면 각 세션에 일련번호를 부여해줌으로써 유일성을 보장할 수 있지만, 중앙에서 관리되지 않는 분산 환경에 경우에는 개별 시스템이 id를 발급하더라도 유일성을 보장할 수는 없을 것이다.(동시발급 등의 문제) 이를 위해 탄생한 것이 범용 고유 식별자 UUID
이다.
UUID
는 128비트의 숫자로 이루어져 있으며, 32자리의 16진수로써 표현할 수 있다.
UUID
는 00000000-0000-0000-0000-000000000000 (8-4-4-4-12) 형식으로 표현한다.
예를들면 아래와 같이 표기할 수 있다.
1849ab2e-1e3a-d146-9851-19387969172
UUID
의 버전은 1, 3, 4, 5가 있다. 이중에서 가장 많이 쓰이는 것은 버전 1, 4라고 한다. 버전 1은 타임스탬프를 기준으로 생성되고, 버전 4는 랜덤으로 생성된다. 버전 3, 5는 해쉬함수를 이용하여 생성하는 방식이다.