SQLP

시험 직전 요약장

판단 기준과 헷갈리는 개념, 대표 예제를 짧게 확인하세요.

이론 목록

반정규화: 성능을 위한 의도적 중복

원래 이론 →

판단 기준

반정규화는 단순히 테이블을 합치는 작업이 아니다.

수준대표 기법주된 이득함께 드는 비용
테이블병합, 수직·수평 분할, 통계·이력·요약 테이블조인·스캔 범위 감소동기화·추가 저장
컬럼중복 컬럼, 파생 컬럼, PK 컬럼의 일반 컬럼 복제반복 조인·계산 감소갱신 경로 증가
관계중복 관계 추가긴 조인 경로 단축참조 무결성 관리

자주 사용하는 소수 컬럼과 거의 사용하지 않는 큰 컬럼이 한 넓은 테이블에 섞여 블록당 행 수가 줄어든다면, 1:1 수직 분할로 핵심 컬럼을 별도 테이블에 둘 수 있다. 행의 종류나 기간별로 읽는 범위가 명확하면 수평 분할을 검토한다.

주문목록을 조회할 때 매번 제품 테이블과 조인하는 비용이 실제 병목이라면 제품명을 주문목록에 중복할 수 있지만, 제품명 변경 시 과거 주문의 이름을 바꿀지 보존할지 업무 규칙부터 정해야 한다.

이 부분의 원문 →

헷갈리는 개념

방식장점위험
동일 Transaction에서 함께 갱신즉시 일관성여러 Table Lock·업무 결합 증가
Trigger누락 방지숨은 부하·재귀·오류 추적 어려움
Event/비동기 갱신쓰기 응답 분리일시적 불일치·재처리 필요
Batch 재생성단순·대량 효율최신성 지연
Materialized ViewQuery Rewrite·관리 기능Refresh 비용·제약

반정규화된 값마다 원천, 갱신 주체, 허용 지연, 검증 Query, 재생성 절차를 문서화한다.

이 부분의 원문 →

대표 계산·예제

예를 들어 주문 목록에서 고객명을 매우 자주 조회한다고 주문에 고객명을 복제하면 조인은 줄지만, 고객명 변경 시 모든 주문의 값을 맞춰야 한다. 따라서 갱신 주체, 동기화 방식, 검증 절차가 설계에 포함되어야 한다.

이 부분의 원문 →

내 최근 연습 오답

현재 브라우저의 연습 채점 기록에서 공개된 단원과 연결된 오답을 확인합니다.

학습 기록 →

오답 기록을 확인하고 있습니다.