- HOME
- [종료]구루비 DB 스터디
- 2014년 상반기 - 오라클 데이터베이스 스터디
- 복잡한 주 식별자
복잡한 주 식별자
기본 원칙
- 업무식별자가 주식별자가 되는 것은 가장 기본적인 원칙
- 많은 엔터티에서 참조되지 않으면 주 식별자가 복잡한 것은 문제되지 않는다.
유형
기준 데이터를 관리할 때
- 이러한 기준 엔터티는 보통 하위 엔터티가 존재하지 않는다.
- 그러므로 주식별자가 복잡해지는 것은 문제가 되지 않는다.
집계 데이터를 관리할 때
- 이러한 집계 엔터티는 보통 하위 엔터티가 존재하지 않는다.
- 그러므로 주식별자가 복잡해지는 것은 문제가 되지 않는다.
인스턴스를 생성하는 기준이 복잡할 때
- 기준을 상세하게 가져갈수록 주 식별자는 복잡해 진다.
교차 엔터티일 때
- 주식별자가 복잡한 두 엔터티 사의에 다대다(M:M) 관계가 존재하면 교차엔터티의 주 식별자는 더욱 복잡해 진다.
- 한쪽 엔터티의 주식별자만 추가하는 방법(인조식별자 순번 추가)
- 업무식별자와 인조식별자가 혼합된 방법으로 바람직하지 않음
- 교차엔터티에 인조식별자 채택(교차엔터티에 하위가 존재할 경우)
- 상위엔터티에 인조식별자 채택(상위엔터티에 다수 하위가 존재할 경우)
슈퍼 식별자가 사용될 때
- 고객ID만으로도 주식별자여야만 한다, 고객번호는 일반속성으로 변경해야 함.
PK 인덱스(커버링 인덱스)를 사용하려 할 때
주 식별자 상속이 지속적으로 이루어 질 때
- 복잡한 주식별자가 연속적으로 상속되는 경우
- 조인 없이 조회하기 편리해 무조건 상속하면 복잡해 지므로 상속과 단절의 적절한 선택이 필요
기본 원칙 + 적절한 판단
- 업무식별자가 주식별자가 되는 것은 가장 기본적인 원칙
- 많은 엔터티에서 참조되지 않으면 주 식별자가 복잡한 것은 문제되지 않는다.
- 오히려 인조식별자를 채택하면 인덱스만 하나 더 늘어나는 샘
- 복잡한 주식별자가 나쁜것은 아니지만 무조건 좋은 것도 아니다.
- 업무식별자가 너무 복잡한것은 아닌지? 슈퍼식별자가 포함된것은 아닌지? 인조식별자를 채택하는 것은 어떨지?
- 다양한 검토 필요
- HOME
- [종료]구루비 DB 스터디
- 2014년 상반기 - 오라클 데이터베이스 스터디
- 복잡한 주 식별자