DB/수업

7. 데이터 종속성과 정규화(4-1)

멜데스 2017. 5. 15. 15:44

1. 수정 이상 

정규화의 의미 

 정규화(normalization) 

- 자료 저장 공간을 최소화하고 데이터베이스 내의 데이터가  

불일치 되는 위험을 최소화하여 좋은 데이터베이스 스키마를 설계하는 것을 목적 


데이터베이스 스키마가 잘못 설계된 경우 

- 100번 학생이 전자계산기구조와 운영체제라는 두 과목을 신청하였기에 이 학생의 이름은 두 번 저장되는 

문제점 발생 

- 중복된 데이터의 저장으로 인해 저장 공간이 낭비된다는 문제점 이외에도 중복되어 저장된 데이터 때문에 

릴레이션의 수정, 삽입, 삭제와 같은 조작을 할 때 여러 가지 곤란한 이상(anomaly) 현상이 생김 

 


수정 이상

- 중복 데이터 중에서 일부만 갱신되어 정보의 모순이 발생하는 것 


2. 삽입 이상, 삭제 이상 

삽입 이상 

- 불필요한 정보를 함께 저장하지 않음 

- 어떤 정보를 저장하는 것이 불가능하기에 원하지 않는 정보를 강제로 삽입해야 하는 것 


삭제 이상 

- 유용한 정보를 함께 삭제하지 않고는 어떤 정보를 삭제하는 것이 불가능한 것  


 정규화(normalization) 

- 갱신 이상이 생기지 않도록 불필요한 데이터가 중복되어 저장되지  

않게 방지하여 바람직한 릴레이션 스키마로 만들어 가는 과정 


 정규화의 목적 

- 반복적인 자료를 제거하여 다음과 같은 상태를 만들기 위한 것 

1.  어떤 관계라도 데이터베이스 내에서 표현이 가능하도록 만드는 것 

2.  관계에서 바람직하지 않은 삽입, 삭제, 갱신 이상이 발생하지 않도록 함 

3.  새로운 형태의 데이터가 삽입될 때 관계를 재구성할 필요성을 줄일 수 있음 

4.  보다 간단한 관계 연산에 기초하여 검색을 보다 효율적으로 할 수 있음 


3. 함수 종속 

  함수적 종속 정의 

- X → Y 

 

  결정자(determinant) 

- 주어진 릴레이션에서 다른 속성(또는 속성들의 집합)을 고유하게 결정하는 하나 이상의 속성 


 함수적 종속의 성질 

- 완전 함수 종속(FFD: Full Functional Dependency) 

- 부분 함수 종속(PFD: Partial Functional Dependency) 


  함수 종속 다이어그램 

- 릴레이션 내의 속성들의 종속 관계를 보다 쉽게 이해하기 위해서는  

이를 도식적으로 표현