통계&데이터사이언스/데이터 처리와 활용

[데이터처리와 활용] 3강 관계형 데이터베이스 설계

데이터 시오 2024. 10. 5. 11:33
728x90
반응형

정규화

1. 정규화의 필요성

- 삭제이상 : 중요한 데이터를 삭제할 때, 원치 않는 다른 데이터도 함께 삭제되는 경우

- 삽입이상 : 새로운 데이터를 추가할 때, 다른 관련 데이터가 없으면 추가할 수 없는 경우

- 갱신이상 : 데이터 수정 시, 같은 데이터의 여러 복사본을 모두 업데이트해야 하는 경우

 

2. 함수적 종속성

데이터베이스에서 두 개의 속성 간의 관계

 

3. 정규형

- 제 3 정규형 3NF

  • 1NF(제 1 정규형): 모든 필드가 원자값(Atomic Value)이어야 하며, 중복된 데이터가 없어야 한다
  • 2NF(제 2 정규형): 모든 비주요 속성이 기본 키에 완전 함수적으로 종속되어야 한다
  • 3NF: 모든 비주요 속성이 기본 키에 비이행적으로 종속되어야 합니다. 즉, A → B, B → C일 때 A → C가 성립하면 안 됩니다.

- 보이스-코드 정규형 (BCNF)

3NF의 강화된 형태로, 모든 결정자가 후보 키여야 한다.

 

4. 무손실 분해 Lossless decomposition

데이터베이스 설계에서 테이블을 여러 개로 분해할 때 원래의 데이터를 잃지 않고 재구성할 수 있는 분해

 

5. 종속석 유지 분해

테이블 T 에 존재하는 FD 들의 집합을 F라고 하고 무손실 분해 후 테이블 T1, T2,..., Tn 에 존재하는 FD들의 각 집합

 

6. 데이터베이스 설계 정리

[1] 정규화의 목적

1. 무손실 분해

2. 종속성 유지 분해

3. 분해된 모든 테이블들이 BCNF

 

[2] 종속성 유지 분해가 아닐 때 차선의 정규화

1. 무손실 분해

2. 종속성 유지 분해

3. 3NF 허용

728x90