관계형 데이터 모델링 프리미엄 가이드 DB구축 (2017년)
주 식별자 선정 절차 0 0 656

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


8.4 주 실별자 선정 절차

  • 엔터티의 주 식별자를 결정히는 시발점은 업무 식별자를 도출하는 것이다.

  • 업무식별자가 도출되지 않는한 최종적인식별자인 주 식별자는 결정될수없다.


엔터티의 종류와 상위(부모) 엔터티와의 관계 카디널러티 (Cardinality)에 따른 주식별자의 구성


주식별자 순서

  • 주식별자가 결정되면 마지막으로 주 식별자를 구성하고 있는 속성의 순서 정해야 한다.
  • 주식별자의 속성순서는 조회 성능에 많은 영향을 끼친다.
  • -> 조회 요건을 검토할 수 있는 단계가 최소한 개발 단계
  • -> 모든 쿼리 (SQL)는 사실상 개발이 마무리되는 딘계에서 나온다
  • -> 개발이 끝난 후의 테스트 단계에서 성능 문제 때문에 주 식별자의 구성 속성 순서를 변경하는 경우 발생
  • 해당엔터티를 대상으로 자주사용되는 조건을 파악또느 주요화면을 확인해 주식별자의 속성 순서 효율적으로 결정해야 한다.
  • 물론 추후에 SQL을 분석해서 최종적으로 결정
  • 식별지를 물리적인 주키 (Primary Key) 조건절에서 자주 사용되록 한다.
  • 속성의 분포도를 고려해 주 식별자의 첫 번째에 오도록 한다.

  • Where 고객번호 = '12345' 같은 SQL이 많이 쓰이는 위의 주식별자 순서가 적당
  • ->고객번호가 PK 인덱스로 활용

  • Where 고객번호 = '12345' 고객번호 속성을 맨앞에 위치하는 별도의 인덱스가 필요
  • 모든 SQL구문을 만족하기 쉽지 않으므로 가장 많이 사용되는 구문을 기준으로 한다.

  • 주문일자별로 대량처리하는 경우는 위의 순서가 효율적
"주주클럽 스터디모임" 에서 2017년에 "관계형 데이터 모델링 프리미엄 가이드" 도서를 스터디하면서 정리한 내용 입니다.

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

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

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

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