본문 바로가기

공부/IT

함수적 종속, 정규화

반응형

함수적 종속(Functional Dependency)의 개념

- 어떤 테이블 R에서 X와 Y를 각각 R의 속성 집합의 부분 집합이라 하자. 속성 X의 값 각각에 대해 시간에 관계없이 항상 속성 Y의 값이 오직 하나만 연관되어 있을 때 Y는 X에 함수적 종속 또는 X가 Y를 함수적으로 결정한다고 하고, X->Y로 표기한다.

- 함수적 종속은 데이터의 의미를 표현하는 것으로, 현실 세계를 표현하는 제약 조건이 되는 동시에 데이터베이스에서 항상 유지되어야 할 조건이다.

 

 

정규화(Nomalization)의 개념

- 정규화는 테이블의 속성들이 상호 종속적인 관계를 갖는 특성을 이용하여 테이블을 무손실 분해하는 과정으로, 정규화의 목적은 가능한 한 중복을 제거하여 삽입, 삭제, 갱신 이상의 발생 가능성을 줄이는 것이다.

- 정규형에 과정에는 제 1정규형, 제 2정규형, 제 3정규형, BCNF, 제 4정규형, 제 5 정규형이 있으며, 순서대로 정규화의 정도가 높아진다.

 

 

정규화 과정

제 1정규형은 테이블 R에 속한 모든 속성의 도메인이 원자 값만으로 되어 있는 정규형이다. 즉 테이블의 모든 속성 값이 원자 값으로만 되어 있는 정규형이다. 1NF에서는 기본키부분 함수적 종속된 애트리뷰트가 존재하므로 이상이 발생한다.

제 2정규형은 테이블 R이 제 1정규형이고, 기본키가 아닌 모든속성이 기본키에 대하여 완전 함수적 종속을 만족하는 정규형이다.

제 3정규형은 테이블 R이 제 2정규형이고, 기본키가 아닌 기본키에 대해 이행적 함수적 종속을 만족하지 않는 정규형이다.

BCNF는 테이블 R에서 모든 결정자가 후보키인 정규형이다. 일반적으로 제 3정규형에 후보키가 여러 개 존재하고, 이러한 후보키들이 서로 중첩되어 나타나는 경우에 적용 가능하다.

 

* 정규화 과정은 밑줄 친 부분을 유의하며 이해하고 공부하는것이 좋은것 같습니다.

반응형

'공부 > IT' 카테고리의 다른 글

데이터베이스 기타 실무  (10) 2020.11.18
데이터 언어  (11) 2020.11.16
관계대수(Realtion Algebra)  (0) 2020.11.11
인공지능(AI)  (1) 2020.11.10
아두이노(Arduino)  (2) 2020.11.10