제3절 반정규화와 성능
1. 반정규화를 통한 성능향상 전략
- 반정규화 : 정규화된 엔터티, 속성, 관계에 대해 시스템의 성능향상과 개발과 운영의 단순화를 위해 중복, 통합, 분리 등을 수행하는 데이터 모델링 기법이다.
- 중복성의 원리를 활용하여 데이터 조회시 성능을 향상시키는 역할을 할 수 있다.
- 정규화만을 수행하면 엔터티의 갯수가 증가하여 여러 개의 조인이 걸려야한 하는 경우가 있는데, 이때 처리성능이 중요하다고 판단될때 부분적으로 반정규화를 고려 할 수 있다.
- 정규화만을 강조하다 보면 성능의 이슈가 발생될 수 있고 반정규화를 과도하게 적용하다 보면 데이터 무결성이 깨질 수 있는 위험이 증가
- 반정규화 적용 방법
반정규화 대상 조사 : 범위처리빈도수, 대량의 범위 처리, 통계성 프로세스, 테이블 조인 개수 조사
다른 방법 유도 검토 : 뷰(VIEW) 테이블, 클러스터링 적용, 인덱스 조정, 응용애플리케이션ㄴ
반정규화 적용 : 테이블 반정규화, 속성 반정규화, 관계 반정규화
2. 반정규화 기법
(1) 테이블 반정규화
(2) 속성(칼럼) 반정규화
(3) 관계 반정규화
(4) 반정규화를 적용할 때 기억해야 할 내용은 데이터를 입력/수정/삭제할 때는 성능이 떨어지는 점을 기억해야 하고 데이터의 무결성 유지에 주의를 해야 한다.
'자격증 > SQLD' 카테고리의 다른 글
SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제2장 데이터 모델과 성능 / 제5절 데이터베이스 구조와 성능 (0) | 2021.05.22 |
---|---|
SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제2장 데이터 모델과 성능 / 제4절 대량 데이터에 따른 성능 (0) | 2021.05.22 |
SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제2장 데이터 모델과 성능 / 제2절 정규화와 성능 (0) | 2021.05.22 |
SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제2장 데이터 모델과 성능 / 제1절 성능 데이터 모델링의 개요 (0) | 2021.05.22 |
SQLD 정리 / 과목 1 데이터 모델링의 이해 / 제1장 데이터 모델링의 이해 / 제 5절 식별자 (0) | 2021.05.22 |