SQLD 학습(2-3 반정규화와 성능)

제우민·2022년 8월 23일
0
post-thumbnail

반정규화의 정의
정규화된 엔터티, 속성, 관계에 대해 시스템의 성능향상과 개발과 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링의 기법을 의미

데이터 무결성이 깨질 수 있는 위험을 무릅쓰고 데이터를 중복하여 반정규화를 적용하는 이유는 데이터를 조회할 때 디스크 I/O량이 많아서 성능이 저하되거나 경로가 너무 멀어 조인으로 인한 성능저하가 예상되거나 칼럼을 계산하여 읽을 때 성능이 저하될 것이 예상되는 경우 반정규화를 수행하게 된다.

  • 반정규화의 대상을 조사하고 다른 방법을 적용할 수 있는지 검토하고 그 이후에 반정규화를 적용하도록 한다.

반정규화의 기법

  • 테이블 반정규화
    테이블 병합
    테이블 분할
    테이블 추가
  • 칼럼 반정규화
    중복 컬럼 추가
    파생 칼럼 추가
    이력 테이블 칼럼 추가
    PK에 의한 칼럼 추가
    응용시스템의 오작동을 위한 칼럼 추가
  • 관계 반정규화
    중복 관계 추가
profile
Work hard

0개의 댓글