본문 바로가기
데이터베이스

관계형 데이터베이스 정규화 1NF 2NF 3NF 정리

by 매일기술사 2026. 3. 19.
Database · 한장정리

[기술사토픽] 관계형 모델 & 정규화 완벽 정리 - 한장정리

ER모델 구성요소, 관계 대수 연산, 함수 종속성과 1NF~BCNF 정규화 단계, 이상현상까지 기술사 빈출 주제를 완벽 정리합니다.

관계형모델정규화ER모델BCNF정보관리기술사

Ⅰ.데이터 구조화 기술, 관계형 모델의 개요

개념: 관계형 모델(Relational Model)은 Codd(1970)가 제안한 데이터 모델로, 데이터를 2차원 테이블(릴레이션) 형태로 표현하고 관계 대수를 기반으로 데이터를 조작합니다.

특징: (1) 릴레이션 — 행(튜플)과 열(속성)로 구성 (2) 기본키(PK)로 튜플 유일 식별 (3) 외래키(FK)로 릴레이션 간 참조 무결성 유지

가. ER모델 구성요소
구성요소 표기 설명 예시
개체(Entity) 사각형 독립적으로 존재하는 현실 객체 학생, 과목
속성(Attribute) 타원형 개체의 특성·성질 학번, 이름
관계(Relationship) 마름모 개체 간 연관성 수강(학생-과목)
기본키 속성 밑줄 타원 개체를 유일하게 식별 학번(PK)
카디널리티 1:1, 1:N, M:N 관계의 대응 수 학생:과목 = M:N
나. 관계 대수 핵심 연산
연산 기호 설명
선택(Select) σ (시그마) 조건에 맞는 튜플 추출 (행 선택)
추출(Project) π (파이) 특정 속성만 추출 (열 선택)
조인(Join) 공통 속성으로 릴레이션 결합
합집합(Union) 두 릴레이션의 합 (중복 제거)
차집합(Difference) 한쪽에만 있는 튜플

Ⅱ.정규화 단계 & 이상현상

정규화(Normalization)란 릴레이션의 이상현상(Anomaly)을 제거하고 데이터 중복을 최소화하기 위해 릴레이션을 분해하는 과정입니다.

가. 이상현상 3가지
이상현상 설명 예시
삽입 이상 불필요한 데이터 함께 삽입 필요 과목 없이 학생 등록 불가
삭제 이상 의도치 않은 데이터 함께 삭제 마지막 수강 삭제 시 학생 정보 소실
갱신 이상 중복 데이터 일부만 수정되어 불일치 교수명 변경 시 일부만 반영
나. 정규화 단계 (1NF → BCNF)
1NF
원자값
모든 속성이 원자값(반복 그룹 제거)
2NF
부분 종속 제거
기본키 전체에 완전 함수 종속
3NF
이행 종속 제거
A→B→C 이행적 종속 제거
BCNF
결정자=후보키
모든 결정자가 후보키
4NF/5NF
다치/조인 종속
실무 적용 드묾
암기 팁

1NF→2NF: 부분 종속 제거 / 2NF→3NF: 이행 종속 제거 / 3NF→BCNF: 결정자=후보키
역정규화: 성능 향상을 위해 의도적으로 정규화 되돌리기 (조회 성능 vs 무결성 트레이드오프)

Ⅲ.함수 종속성 & 정규화 비교표

정규형 조건 제거 대상 핵심 키워드
1NF 원자값 속성 반복 그룹, 다중값 Atomic Value
2NF 1NF + 완전 함수 종속 부분 함수 종속 Partial Dependency
3NF 2NF + 이행적 종속 제거 이행 함수 종속 Transitive Dependency
BCNF 3NF + 결정자=후보키 비후보키 결정자 Determinant = Candidate Key

Ⅳ.결론 및 전문가 의견

결론

정규화는 데이터 무결성과 중복 제거의 핵심 기술입니다.
향후 빅데이터 환경에서는 성능을 위한 역정규화(De-normalization)NoSQL의 비정규화 설계가 병행되며, 상황에 맞는 트레이드오프 판단이 중요합니다.

"정규화는 데이터를 '올바르게 저장'하는 원칙이고, 역정규화는 데이터를 '빠르게 읽기' 위한 현실적 타협이다."

블로그: 기술사 학습노트 · imt-log.tistory.com