1. 성능 데이터 모델링이란?
- 데이터베이스 성능 향상을 목적으로, 설계단계의 데이터 모델링 때부터 성능과 관련된 사항이 데이터 모델링에 반영될 수 있도록 하는 것
2. 성능 데이터 모델링의 수행 절차
① 데이터 모델링을 할 때 정규화를 정확하게 수행한다.
② 데이터베이스 용량산정을 수행한다.
③ 데이터베이스에 발생되는 트랜잭션의 유형을 파악한다.
④ 용량과 트랜잭션의 유형에 따라 반정규화를 수행한다.
⑤ 이력모델의 조정, PK/FK조정, 슈퍼타입/서브타입 조정등을 수행한다.
⑥ 성능관점에서 데이터 모델을 검증한다.
3. 반정규화(Denormalization)란?
- 정규화된 엔터티, 속성 관계에 대해 시스템의 성능향상과 개발과 운영의 단순화하기 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법
- 데이터를 중복하여 성능을 향상 시키기 위한 기법
4. 반정규화를 적용하는 경우
- 데이터 조회 시 디스크 I/O량이 많아서 성능이 저하되는 경우
- 경로가 너무 멀어 조인(Join)으로 인한 성능 저하가 예상되는 경우
- 칼럼을 계산하여 읽을 때 성능이 저하되는 것을 예상되는 경우
5. 반정규화 절차

참고 사이트
https://dataonair.or.kr/db-tech-reference/d-guide/sql/?pageid=5&mod=document&uid=333