반정규화는 정규화된 릴레이션을 성능 향상 목적으로 중복, 통합, 분리 등을 수행하는 것을 의미한다. 반정규화를 하게 되면 데이터의 무결성이 깨질 수 있기 때문에, 이를 보장할 수 있는 선에서 반정규화를 시행해야한다.
1) 1:1 관계 테이블 병합
2) 1:M 관계 테이블 병합
3) 슈퍼/서브타입 테이블 병합
디스크 I/O를 분산 처리하기 위해 테이블을 분할한다.
1) 수직분할
컬럼 단위로 테이블을 분할한다.
2) 수평분할
로우 단위로 테이블을 분할한다.
1) 중복테이블 추가
다른 업무이거나 서버가 다른 경우 중복 테이블을 만들어 성능을 향상시키기도 한다.
2) 통계테이블 추가
SUM, AVG 등 집계함수를 미리 수행하여 계산해두는 테이블을 생성한다.
3) 이력테이블 추가
이력테이블 중 원래 테이블에 존재하는 레코드가 이력테이블에도 중복되는 경우에는 반정규화 유형에 해당한다.
4) 부분테이블 추가
하나의 테이블의 전체 컬럼 중 자주 이용하여 자주 이용하는 컬럼을 모아놓은 별도의 중복 테이블 생성해준다.