Learning
토픽 212 / 224·비교표

정규화 및 역정규화

정규화 vs 역정규화

항목정규화역정규화
목적무결성, 중복 제거조회 성능 향상
중복최소화의도적 허용
조인증가감소
적용OLTP 시스템DW/OLAP 시스템
이상현상방지발생 가능(보상 필요)

완전종속 vs 부분종속 vs 이행종속

항목완전 함수 종속부분 함수 종속이행 함수 종속
상태정상(2NF 충족)2NF 위반3NF 위반
의미기본키 전체에 종속기본키 일부에 종속X→Y→Z 간접 종속
해결-테이블 분리테이블 분리

삽입이상 vs 삭제이상 vs 갱신이상

항목삽입 이상삭제 이상갱신 이상
증상NULL 강제 삽입유지 정보 함께 삭제데이터 불일치
원인불필요 데이터 동시 삽입마지막 데이터 삭제 시중복 데이터 일부만 수정
해결정규화(테이블 분해)정규화(테이블 분해)정규화(테이블 분해)

BCNF vs 3NF

항목3NFBCNF
조건비키→키 종속 제거모든 결정자가 후보키
엄격도상대적 완화더 엄격 (BCNF ⊂ 3NF)
분해 시종속성 보존 보장종속성 손실 가능

수평분할 vs 수직분할

항목수평 분할수직 분할
분할 단위행(Row) 단위컬럼(Column) 단위
기준범위, 해시, 리스트접근 빈도
적용이력 데이터, 대용량접근빈도 분리

파생컬럼 vs 뷰

항목파생 컬럼뷰(View)
계산 시점저장 시점(사전 계산)조회 시점(실시간 계산)
저장물리적 저장논리적 정의만
성능조회 빠름, 동기화 필요조회 시 연산 부하

롤업(Roll-Up) vs 롤다운(Roll-Down) vs 개별(Identity)

구분롤업(Roll-Up)롤다운(Roll-Down)개별(Identity)
전략슈퍼타입에 통합 (Single)서브타입에 분산 (Plus)각각 테이블 (1:1)
테이블 수1개서브타입 수만큼슈퍼 1 + 서브 N개
NULL많음 (다른 서브타입 컬럼)없음없음
조인불필요불필요 (서브타입 단독)필요 (슈퍼-서브)
전체 조회단순 SELECTUNION 필요UNION 또는 조인
적합 상황서브타입 적음, 전체 조회 빈번서브타입별 독립 처리정규화 중시, 변경 유연