6-1. 역정규화란 무엇인가

역정규화(De-normalization)는 말 그대로 정규화의 반대 작업이다.

정규화는 데이터를 여러 테이블로 쪼개고 중복을 제거해 무결성을 높이는 과정이다. 하지만 정규화를 과도하게 적용하면 다음과 같은 문제가 생기기도 한다.

이럴 때 의도적으로 중복을 허용하거나, 계산 결과를 컬럼·테이블에 미리 저장하는 것이 역정규화이다.

6-2. 역정규화의 목적

즉, 성능 개선이 역정규화의 핵심 목적이다.

6-3. 역정규화의 대표적인 패턴

  1. 중복 컬럼 추가
  2. 집계 테이블(요약 테이블) 생성
  3. 자주 조인되는 테이블 병합

6-4. 역정규화의 단점과 주의점

역정규화는 반드시 신중하게 사용해야 한다. 대가가 분명히 존재하기 때문이다.