정규화된 개체, 속성, 관계에 대해 성능 향상과 개발 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법이다.
장점 : 반 정규화된 데이터 구조는 성능 향상과 관리의 효율성이 증가
단점 : 데이터의 일관성 및 정합성 저하
유지를 위한 비용이 별도로 발생하여 성능에 나쁜 영향을 미칠 수 있음
반 정규화를 위해서는 데이터의 일관성과 무결성을 우선으로 할지, 데이터베이스의 성능과 단순화에 우선순위를 둘 것인지를 비교하여 조정하는 과정이 중요하다.
테이블 병합
1:1 관계, 1:M 관계를 통합하여 조인 횟수를 줄여 성능을 향상
테이블 분할
데이블을 수직 또는 수평으로 분할하는 것으로 파티셔닝이라고 함
수평 분할 : 테이블 분할에 레코드를 기준으로 활용
수직 분할 : 하나의 테이블이 가지는 컬럼의 개수가 증가하는 경우 활용
중복 테이블 추가
대량의 대량의 데이터들에 대한 집계함수를 사용하여 실시간 통계정보를 계산하는 경우에 효과적인 수행을 위해 별도의 통계 테이블을 두거나 중복 테이블을 추가
집계 테이블 추가, 진행 테이블 추가, 특정 부분만을 포함하는 테이블 추가
컬럼 중복화
조인 성능 향상을 위한 중복 허용
중복관계 추가
데이터를 처리하기 위한 여러 경로를 거쳐 조인이 가능하지만 이때 발생할 수 있는 성능 저하를 예방하기 위해 추가적 관계를 맺는 방법