정규화
- 정규화란 함수적 종속성 등의 종속성 이론을 이용하여 잘못 설계된 관계형 스키마를 더 작은 속성의 세트로 쪼개어 바람직한 스키마로 만들어 가는 과정이다.
- 하나의 종속성이 하나의 릴레이션에 표현될 수 있도록 분해해가는 과정이라고 할 수 있다.
- 정규형에는 제1정규형, 제2정규형, 제3정규형, BCNF형, 제4정규형, 제5정규형이 있으며 차수가 높아질수록 만족시켜야 할 제약 조건이 늘어난다.
- 정규화는 데이터베이스의 논리적 설계 단계에서 수행한다.
- 정규화는 논리적 처리 및 품질에 큰 영향을 미친다.
정규화의 목적
- 데이터 구조의 안정성을 최대화한다.
- 어떠한 릴레이션이라도 데이터베이스 내에서 표현 가능하게 만든다.
- 효과적인 검색 알고리즘을 생성할 수 있다.
- 중복을 배제하여 삽입, 삭제, 갱신 이상의 발생을 방지한다.
- 데이터 삽입 시 릴레이션을 재구성할 필요성을 줄인다.
Anomaly(이상)의 개념 및 종류
- 삽입 이상(Insertion Anomaly) : 릴레이션에 데이터를 삽입할 때 의도와는 상관없이 원하지 않은 값들도 함께 삽입되는 현상
- 삭제 이상(Deletion Anomaly) : 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 다른 값들도 함께 삭제되는 연쇄 삭제 현상
- 갱신 이상(Update Anomaly) : 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상
정규화의 원칙
- 정보의 무손실 표현, 즉 하나의 스키마를 다른 스키마로 변환할 때 정보의 손실이 있어서는 안 된다.
- 분리의 원칙, 즉 하나의 독립된 관계성은 하나의 독립된 릴레이션으로 분리시켜 표현해야 한다.
- 데이터의 중복성이 감소되어야 한다.
정규화 과정
1) 1NF : 도메인이 원자값만으로 되어 있는 릴레이션이다.
2) 2NF : 1NF에서 부분적 함수 종속을 제거한다.
3) 3NF : 2NF에서 이행적 함수 종속을 제거한다.
4) BCNF : 결정자이면서 후보키가 아닌 것을 제거한다.
5) 4NF : 다치 종속을 제거한다.
6) 5NF : 조인 종속성을 이용한다.
'정보처리산업기사 > 필기 학습' 카테고리의 다른 글
[데이터베이스] 시스템 카탈로그 / 데이터 사전 (0) | 2021.04.22 |
---|---|
[데이터베이스] 검색-해싱(Hashing) (0) | 2021.04.21 |
[데이터베이스] 관계대수와 관계해석 (0) | 2021.04.21 |
[데이터베이스] 제약조건 (0) | 2021.04.21 |
[데이터베이스] 데이터베이스 설계 (0) | 2021.04.21 |