소프트웨어 개발자/좋은 API, DB 설계하기

[좋은 DB 설계하기] 수치형 필드 설계하기

yubi5050 2024. 9. 29. 17:05

개요

수치형 필드 설계시 효율적인 데이터 저장을 위해 나름의 현실에서 만들어 질 수 있는 필드들에 기준을 세워보았다.

 

 

수치형 필드 기준

횟수(유한) / 일수 / 개수

  • 일반적인 (unsigned) Integer 필드
  • DB 내부적으로 21억 이하의 정수 
  • 비즈니스 로직상으로 무한정 커질 수 없는 경우
  • ex) 일 노출 횟수, 기간 일 수, 댓글 개수

 

금액 및 횟수 (무한)

  • (unsigned) BigInteger 필드
  • DB 내부적으로 63경 이하
  • 물론 꼭 Big 으로 필요는 없고 유연하게 하여도 됨)
  • ex. 상품 단가, 최종 금액, 조회  

 

Enum 값, 작은 단위의 값 (유한)

  • TinyInteger, SmallInteger 필드 (일반적으로 256 또는 32767 이하)
  • ex) 유저 타입, 상태값, 할인율 (0~100)

 

실수형

  • FloatField / DecimalField 중 선택
  • ex) 위도, 경도, api 소요 시간(s)