함수 종속(Functional Dependency)이란
데이터베이스의 관계(relation)의 각 속성(attribute) 사이에는 의존성이 존재하는데, 이 두 개의 속성 집합 간 제약의 일종
릴레이션 R에서 특정 속성 X가 특정고유속성 Y를 결정짓는 관계 ( 이때 X가 결정자, Y가 종속자 )
정규화 과정에서 함수 종속성은 매우 중요하게 이용된다.
함수 종속성이란 두 필드의 집합이 mant-to-one(다대일) 관계로 사상되는 것을 말한다.
즉, 함수와 같이 어떠한 값을 통해 종속 관계에 있는 다른 값을 유일하게 결정할 수 있다는 것.
함수 종속의 성질
어떠한 테이블 RR에 대해 X, Y, Z라는 필드의 집합이 있을 때, 함수 종속은 다음과 같은 성질을 만족하며, 이를 암스트롱의 공리 (Armstrong's axioms)라고 한다.
- augmentation: 만약 X→Y이면, XZ→YZ이다.
- transitivity: 만약 X→Y이고 Y→Z이면, X→Z이다.
- reflexivity: 만약 Y가 X의 부분집합이면, X→Y이다.
- self-determination: 자기 자신은 자신에 의해, X→X이다.
- union: 만약 X→Y이고 X→Z이면, X→YZ이다.
- decomposition: 만약 X→YZ이면, X→Y이고 X→Z이다.
[함수종속성에 대한 정규화 규칙]
- 완전함수종속성(1FD) : XY -> Z 일 때, X -> Z 가 성립하지 않고 Y -> Z 가 성립하지 않는 경우 Z는 XY에 완전함수종속
- 부분함수종속성(2NF) : XY -> Z 일 때, X -> Z 와 Y -> Z 중 하나만 성립하는 경우 부분함수종속. 제 2정규화 필요
- 이행함수종속성(3NF) : 릴레이션 R에서 속성 X -> Y이고, Y -> Z이면 X -> Z임. 제 3정규화 필요
- 결정자함수종속성(BCNF) : 함수적 종속이 되는 결정자가 후보키가 아닌 경우. 즉, X->Y 일때 X 가 후보키가 아님.
- 다중값 종속성(4NF)
- 조인종속성(5NF)
'데이터베이스 (DB)' 카테고리의 다른 글
ER다이어그램 (0) | 2021.06.04 |
---|---|
데이터베이스란 (0) | 2021.06.04 |