# 개요

UUID 값을 순수하게 저장하기 위해선 string 형태로 저장을 해야 하는데 DB 에서 string 데이터를 인덱싱 하는 것은 절대로 추천하지 않습니다.

사실 생성된 UUID 값을 그대로 id 사용하는 것은 적절치 않습니다. UUID 는 보통 다음의 구조를 가집니다.

총 32개의 16진수 문자열과 4개의 ‘-’ 를 사용해 연결되어 있습니다.

 UUID 의 구조를 아래와 같이 변경하면 인덱싱이 가능한, 순서를 ‘어느정도' 보장받는 수 체계로 변환할 수 있다


1-2-3-4-5  ->  32145

a48ebc52–8755–4e74–93e4–44e6c0f2f180

3: 4e74

2: 8755

1: a48ebc52

4: 93e4

5: 44e6c0f2f180

=> 4e748755a48ebc5293e444e6c0f2f180


변경해서 사용하면 auto increment 값을 사용하는 것과 비슷한 수준의 인덱싱 성능을 보장받을 수 있다


# Util 클래스

npm install uuid4 이후,


import uuid4 from 'uuid4'


const uuid = () => {

  const tokens = uuid4().split('-')

  return tokens[2] + tokens[1] + tokens[0] + tokens[3] + tokens[4]

}


export {

  uuid

}


# 출처 

https://medium.com/aha-official/%EC%95%84%ED%95%98-rest-api-%EC%84%9C%EB%B2%84-%EA%B0%9C%EB%B0%9C-6-43568d94878a

'[DBA] Database' 카테고리의 다른 글

[SQL] 조인에 대한 궁금증  (0) 2020.11.19
[SQL] 실행 우선 순서  (0) 2020.11.19
[ERD] 관계선(실선, 점선) 차이  (0) 2020.09.11
  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기