UUID의 8가지 버전, 언제 어떻게 사용할까?
UUID의 8가지 버전 대부분의 경우, 숫자가 높을수록 더 새로운 버전이고 더 나은 것으로 생각됩니다. 그러나 UUID에는 v1부터 v8까지 8가지 버전이 있으며, 각 버전은 서로 다른 방식으로 정의되어 있습니다. 간단히 각 버전이 무엇인지 살펴보겠습니다: * UUID 버전 1 (v1): 타임스탬프, 모노토닉 카운터, 그리고 MAC 주소를 기반으로 생성됩니다. * UUID 버전 2 (v2): 보안 ID용으로 예약되어 있지만, 구체적인 세부 사항은 알려지지 않았습니다. * UUID 버전 3 (v3): 제공된 데이터를 MD5 해시로 변환하여 생성됩니다. 예를 들어, DNS나 URL 같은 데이터가 사용될 수 있습니다. * UUID 버전 4 (v4): 완전히 랜덤한 데이터로 생성됩니다. 아마도 가장 많이 사용되는 버전일 것입니다. * UUID 버전 5 (v5): 제공된 데이터를 SHA1 해시로 변환하여 생성됩니다. v3과 유사하게 DNS나 URL 같은 데이터가 사용됩니다. * UUID 버전 6 (v6): 타임스탬프, 모노토닉 카운터, MAC 주소를 기반으로 하지만, 생성된 UUID가 생성 시간순으로 정렬되도록 순서를 바꿉니다. * UUID 버전 7 (v7): 타임스탬프와 랜덤 데이터를 기반으로 생성됩니다. * UUID 버전 8 (v8): 사용자 정의 데이터로 생성됩니다. 단, 모든 버전에 필수적인 필드(버전 및 변형 필드)는 포함됩니다. 언제 사용해야 할까? * v4: 그냥 랜덤 ID가 필요할 때 사용하세요. 기본적으로 좋은 선택입니다. * v7: ID가 사용되는 컨텍스트에서 정렬이 필요할 때 사용하세요. 예를 들어, 데이터베이스 키로 UUID를 사용할 때 적합합니다. * v5 또는 v8: 사용자 정의 데이터를 UUID에 포함해야 할 때 사용됩니다. 하지만 이러한 경우는 사용자가 이미 필요성을 알고 있는 경우가 많습니다. 다음 링크를 요약한 글입니다. https://ntietz.com/blog/til-uses-for-the-different-uuid-versions/