정규화 탄생
- 한 릴레이션에 여러 엔티티의 애트리뷰트들을 혼합하게 되면 정보가 중복 저장되며,
저장 공간을 낭비하게 됨
- 또 중복된 정보로 인해 갱신이상이 발생
- 동일한 정보를 한 릴레이션에는 변경하고 나머지 릴레이션에서는 변경하지 않은 경우,
어느 것이 정확한지 알 수 없게 됨
- 이러한 문제를 해결하기 위해 정규화 과정을 거침
갱신이상의 종류
- 삽입 이상
- Insertion anomalies
- 원하지 않는 자료가 삽입된다든지, 삽입하는데 자료가 부족해 삽입이 되지 않아 발생하는 문제점
- 삭제 이상
- Deletion anomalies
- 하나의 자료만 삭제하고 싶지만, 그 자료가 포함된 튜플 전체가 삭제됨으로 원하지 않는 정보 손실이 발생하는 문제점
- 수정(갱신) 이상
- Modification anomalies
- 정확하지 않거나 일부의 튜플만 갱신되어 정보가 모호해지거나 일관성이 없어져 정확한 정보 파악이 되지 ㅇ않는 문제점
정규화 란?
- 관계형 데이터베이스에서 중복을 최소화하기 위해 데이터를 구조화하는 작업
- 나쁜 릴레이션의 애트리뷰트들을 나누어서 좋은 작은 릴레이션으로 분해하는 작업
나쁜 릴레이션이란?