자격증/SQLD

SQLD 데이터 모델링의 이해 - 7일차

awspspgh 2024. 10. 10. 21:46
목차
1. 정규화
2. 내용 요약

 

1. 정규화

정규화 (1)

 

정규화 (2)

 

정규화 (3)

 

2. 내용 요약

■ 정규화

○ 정규화

- 데이터의 일관성, 최소한의 데이터 중복, 최대한의 데이터의 유연성을 위한 방법이며 데이터를 분해하는 과정임

- 데이터 중복을 제거하고 데이터 모델의 독립성을 확보하기 위한 방법임

- 제1정규화부터 제5정규화까지 있지만, 실질적으로는 제3정규화까지만 수행함

- 정규화를 하지 않으면 이상현상이 생길 수 있음

- 이상현상 같은 문제를 해결하기 위해서는 테이블을 분해 해야 함

 

○ 정규화 절차

1) 제1정규화

- 속성의 원자성을 확보함

- 기본키를 설정함

 

2) 제2정규화

- 기본키가 2개 이상의 속성으로 이루어진 경우, 부분 함수 종속성을 제거(분해)함

 

3) 제3정규화

- 기본키를 제외한 칼럼 간에 종족성을 제거함. 즉, 이행함수 종족성을 제거함

 

4) BCNF

- 기본키를 제외하고 후보키가 있는 경우, 후보키가 기본키를 종속시키면 분해함

 

5) 제4정규화

- 여러 칼럼들이 하나의 칼럼을 종속시키는 경우, 분해하여 다중값 종속성을 제거함

 

6) 제5정규화

- 조인에 의해서 종속성이 발생되는 경우, 분해함