관계형 데이터 모델링 프리미엄 가이드 DB구축 (2017년)
인조 식별자 채번 0 0 1,204

by 구루비스터디 식별자 [2017.10.28]


8.7 인조 식별자 채번

  • 인조 식별자는 인스턴스를 유일하게 식별할 수 있도록 하는 것이 주요 역할이므로 무의미한 일련번호를 사용하는 것이 바람직하다.


인조식별자 종류

  • 하나씩 증가하는 엄격한 변호
    ( 하나씩만 증가해야 하며 빈 번호가 존재하면 안 되는 업무 요건은 생각보다 많지 않다.)
    ( 그렇게 관리되길 선호히는 것, 숫자가 차례로 증가하지 않으면 심리적으로 불완전하다고 느끼는 것이다.)
  • 단순히 인스턴스를 식별할 수 있도록 유일한 번호


일련번호를 채번하는 방법

오라클 시퀀스(Sequence)를 사용히는 방법
  • 장점: 가장 간편함
    • dbms가 채번 로직을 관리하므로 락발생 최소화
    • 빠르게 채번


채번 엔터티를 사용하는방법
  • 장점 : 결번이 발생하지 않도록 채번 할수있고 체제에 따라채번할수있다
  • 단점 : 엔터티를 별도로 관리해야 한다.
    • 변호가 중복되는 것을 방지하기 위해 For Update 구문을 사용 ( Lock 발생으로 채번속도가 느려짐)


쿼리에서 직접 +1을 해 채번하는방법
  • 장점 : 채번 엔터티를 무한정 생성할수 없는경우 사용
  • 단점 : 최대값을 구하기 위해 index desc 힌트를 사용
    • 중복 값을 방지하기 위해 For Update 구문을 사용
  • 채번성능보다는 결번 방지나 체계에 따른 채번이 우선일 때 채번 엔터티를 사용
  • 채번성능이 우선일 때 시퀀스(Sequence) 사용

"주주클럽 스터디모임" 에서 2017년에 "관계형 데이터 모델링 프리미엄 가이드" 도서를 스터디하면서 정리한 내용 입니다.

- 강좌 URL : http://www.gurubee.net/lecture/3714

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입