본문 바로가기
자격증/SQLD

SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제2장 데이터 모델과 성능 / 제3절 반정규화와 성능

by RUCKUS 2021. 5. 22.

제3절 반정규화와 성능

 

1. 반정규화를 통한 성능향상 전략

  • 반정규화 : 정규화된 엔터티, 속성, 관계에 대해 시스템의 성능향상과 개발과 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법이다.
  • 중복성의 원리를 활용하여 데이터 조회시 성능을 향상시키는 역할을 할 수 있다.
  • 정규화만을 수행하면 엔터티의 갯수가 증가하여 여러 개의 조인이 걸려야한 하는 경우가 있는데, 이때 처리성능이 중요하다고 판단될때 부분적으로 반정규화를 고려 할 수 있다.
  • 정규화만을 강조하다 보면 성능의 이슈가 발생될 수 있고 반정규화를 과도하게 적용하다 보면 데이터 무결성이 깨질 수 있는 위험이 증가
  • 반정규화 적용 방법
    반정규화 대상 조사 : 범위처리빈도수, 대량의 범위 처리, 통계성 프로세스, 테이블 조인 개수 조사
    다른 방법 유도 검토 : 뷰(VIEW) 테이블, 클러스터링 적용, 인덱스 조정, 응용애플리케이션ㄴ
    반정규화 적용 : 테이블 반정규화, 속성 반정규화, 관계 반정규화

2. 반정규화 기법

 (1) 테이블 반정규화

 (2) 속성(칼럼) 반정규화

 (3) 관계 반정규화

(4) 반정규화를 적용할 때 기억해야 할 내용은 데이터를 입력/수정/삭제할 때는 성능이 떨어지는 점을 기억해야 하고 데이터의 무결성 유지에 주의를 해야 한다.