A. DB 구조에 따른 성능 개선 방안

1. 슈퍼타입/서브타입 모델 구현에 따른 성능
2. 인덱스 특성을 고려한 PK/FK 데이터베이스 성능 향상
3. 테이블과 FK제약 여부에 따른 성능

 

 

B. 슈퍼타입/서브타입 모델의 성능

【슈퍼 서브타입 데이터 모델의 개요 】

1. 업무 데이터의 특징을 공통과 차이점을 표현
2. 공통 속성을 슈퍼 타입으로 모델링
3. 차이점이 속성을 별도의 서브 엔터티로 표현
4. 물리 데이터 모델 테이블로 변환을 할 때 선택의 폭을 넓힐 수 있음
5. 물리 데이터 모델 테이블을 설계하는 단계에서 슈퍼 서브타입 데이터 모델을 일정한 기준에 의해 변환

 

【슈퍼 서브타입 데이터 모델의 변환 】

1. 슈퍼 서브타입을 물리 데이터 모델 테이블로 변환을 잘못하면 성능이 저하
2. 트랜잭션 특성을 고려하여 물리 데이터 모델 테이블 설계

 

슈퍼타입/ 서브타입 모델

 

 

C. 인덱스 특성을 고려한 PK/FK

【PK/FK 칼럼 순서와 성능 개요 】

1. PK/FK 설계는 데이터 접근 경로를 제공
2. 성능을 고려한 데이터베이스 설계가 될 수 있도록 설계단계에 칼럼의 순서를 조정

 

【PK 칼럼의 순서와 성능 】

1.SQL 구문의 조건에 따라 인덱스 처리 범위가 상이
2. 데이터를 비교하는 범위가 매우 넓어지게 되어 성능 저하
3. 트랜잭션의 특징을 고려하지 않고 PK 인덱스가 생성되면 인덱스의 범위를 넓게 이용, Full Scan을 유발

 

인덱스  특성을 고려한 PK/FK

 

 

D. 테이블에 FK제약 생성 유무 성능

 

1. 모델에 의해 상속받은 FK속성들은 WHERE 절에서 조인으로 이용되는 경우가 많음
2. FK키 속성으로 인덱스를 생성해야 성능이 좋은 경우가 빈번
3. FK키 속성으로 인덱스가 없는 경우 FULL TABLE SCAN이 발생되어 성능이 저하
4. FK 제약 걸었을 때는 반드시 FK인덱스를 생성
5. 트랜잭션에 의해 거의 활용되지 않았을 때에만 FK 인덱스 삭제를 고려