함수 종속성
본문 바로가기
CS/Database

함수 종속성

by IYK2h 2022. 1. 7.
728x90

함수 종속성(normalization)

userId(pk) -> user_Address 와 같이 왼쪽 속성의 모든 값에 대하여 오른쪽 속성의 값이 유일하게 결정될 때 함수적으로 종속된다고 한다. 즉, 릴레이션 속성간의 함수적으로 종속하는 성질을 뜻한다.

릴레이션 속성간의 종속성을 파악해 릴레이션을 분리해 이상현상이 발생하지 않게 하는것이 중요하다.

함수 종속성 결정자(릴레이션의 기본키)

릴레이션의 기본키가 함수 종속성의 결정자가 된다. 기본키를 알아야 정규화 과정을 하기 수월하다.

함수 종속의 성질

R{X, Y, Z}

  • augmentation: 만약 X→YX→Y이면, XZ→YZXZ→YZ이다.
  • transitivity: 만약 X→YX→Y이고 Y→ZY→Z이면, X→ZX→Z이다.
  • reflexivity: 만약 YY가 XX의 부분집합이면, X→YX→Y이다.
  • self-determination: 자기 자신은 자신에 의해 함수 종속적이다. 즉, X→XX→X이다.
  • union: 만약 X→YX→Y이고 X→ZX→Z이면, X→YZX→YZ이다.
  • decomposition: 만약 X→YZX→YZ이면, X→YX→Y이고 X→ZX→Z이다.

위와 같은 성질을 만족하며 암스트롱의 공리 (Armstrong's axioms)라고 한다.

Closure 개념을 이용한 후보키(Super key) 판별

R(A,B,C,D,E,F)

FD= {A->B , B->D, D->C , E->F}일때 후보키는?

Start CLOSURE = {A,E}

A->B CLOSURE = {A,B,E}

B->D CLOSURE = {A,B,D,E}

D->C CLOSURE = {A,B,C,D,E}

E->F CLOSURE = {A,B,D,E,F}

후보키(Super Key)는 {A,E}이다.

 

참고할만한 링크 - https://untitledtblog.tistory.com/125

728x90

'CS > Database' 카테고리의 다른 글

Oracle 권한 및 역할  (0) 2022.01.21
트랜잭션  (0) 2022.01.14
DB 정규화  (0) 2021.12.31
ER다이어그램  (1) 2021.12.24
데이터 모델링  (0) 2021.12.17

댓글