1) 식별자관계만 이용하여 데이터 모델링을 전개할 경우
= PK 속성의 숫자가 증가 할수록 관련된 SQL 구문이 복잡해져 복잡성으로 인한 개발오류 유발
2) 비식별자관계만 이용하여 데이터 모델링을 전개할 경우
= 데이터간 과다 조인을 유발하여 성능저하를 일으킴
3) 해결법
= 위의 오류를 해결하기 위한 방법
1. 데이터 모델 관계 도출시, 식별자 / 비식별자관계의 의미를 정확하게 이해하고 업무적 특징, 조인관계, pk 구성을 고려하여 결정하기.
4) pk구조 영향 받는 사실
= 식별자끼리만 연결시 pk 속성의 수 증가
5) 비식별자끼리로만 연결시
문제점 1. 테이블 마다 중요한 기준속성이 있다.
-> 부모 엔티티타입에 있는 pk 속성에서 자식 엔티티타입에 존재하는 경우가 많이 있다.
=> 이것이 비식별자 관계로 묶여서 차단당하면 데이터 조회를 위해 부모 테이블까지 찾아가야한다.
6) 비식별자 관계 선정하는 기준
1. 식별자 관계
- 목적 : 강한 연결관계
- 자식 pk 영향 : 자식 pk의 구성에 포함
- 표기법 : 실선
- 연결 고려사항
1) 반드시 부모 엔티티타입 종속
2) 자식pk 구성에 부모 pk 포함 필요
3) 상속받은 pk 속성을 타 엔티티타입에 이전 필요
2. 비식별자 관계
- 목적 : 약한 연결관계 표현
- 자식 pk 영향 : 자식 일반 속성에 포함
- 표기법 : 점선연결
- 연결 고려사항
1) 약한 종속관계
2) 자식 pk 구성을 독립적으로 구성
3) 자식 pk 구성에 부모 pk 부분 불필요
4) 부모 쪽의 관계 참여가 선택 관계임
5) 상속받은 pk 속성을 타 엔티티타입에 재상속 차단 필요
출처 : 아는만큼 보이는 데이터베이스 설계와 구축
'DB 이야기 > DB 도메인 설계' 카테고리의 다른 글
4] 엔티티 타입, 통합? 분리? (0) | 2020.08.11 |
---|---|
3] 이력 유형 데이터 모델링 (2) | 2020.08.11 |
1] PK 컬럼 순서 (0) | 2020.08.07 |
모델링 기법 (0) | 2020.03.23 |
디비 이야기 14. ERD와 이상, 정규화 (0) | 2020.03.08 |