▣ 논리 모델링_함수적 종속성(FD : Functional Dependency) 폐포(Closure) 후보키, 커버(Cover), BCNF, 정규화
1. 폐포(Closure)
- 함수적 종속 관계의 집합 F에서 특정 속성 X가 함수적으로 결정하는 속성들의 집합(X+)
- 후보키 찾기
- 폐포 알고리즘
2. 커버(Cover)
- 어떤 함수종속 집합 F와 동등한 최소의 함수종속 집합을 의미
1) F의 모든 함수종속성들의 오른쪽 편 애트리뷰트가 하나이다.
2) F에서 X -> A를 X의 진부분집합 Y에 대하여 Y->A로 교체했을 때,
F와 동등한 함수적 종속성들의 집합이 될 수 없다.
(함수 종속성 왼쪽에 무의미하게 중된 애트리뷰트 제거)
3) F로부터 어떤 함수적 종속성을 제거했을 때, F와 동등한 함수적
종속성들의 집합이 될 수 없다. (중복 함수종속성 제거)
2014년 53번
정답 : 2번
문제)
답)
2016년 66번
정답 : 3번,4번
③ 상품명이 후보키이므로, 상품명→(상품번호, 담당부서, 구매자)의 함수 종속이 성립
④ 구매자는 하나의 부서(담당부서)에 속하므로, 구매자 담당부서의 함수 종속이 성립
따라서, R1(구매자, 담당부서), R2(상품번호, 상품명, 구매자)에서 후보키가 아닌
구매자->담당부서 함수 종속 관계가 다른 릴레이션(R1)으로 분리되었으므로 BCNF를 만족
2016년 67번
정답 : 1번
1) 후보키인 (A,C) 에 대한 부분 함수 종속 A->B, C->D이 존재하므로 2NF를 만족하지 못함
즉, 현재 상태는 1NF 상태임
2) BCNF는 후보키가 아닌 결정자를 제거한 상태이므로 후보키인 (A,C)가 결정자인 함수 종속,
즉(A,C)->E을 제외한 나머지 함수 종속을 분해해야 함
분해 대상 함수 종속은 A→B, C→D이며, 결과 릴레이션은 R1(A,C,E), R2(A,B), R3(C,D) 임
2017년 53번
정답 : 4번
4) 풀이
- 조건 1 : A의 모든 함수적 종속성들의 오른쪽편 애트리뷰트를 단일 애트리뷰트로 변환
만족함
- 조건 2 : AB → D 가 A → D 혹은 B → D로 대치될 수 있는지 결정
=> B → A 에 의해 B → AB (첨가규칙) 가 되고, B → AB 와 AB → D 에 의해 B → D 가 성립
따라서, AB → D 는 B → D로 대치 가능
{ B → A, D → A, B → D } : 함수종속성 왼쪽이 단일 애트리뷰트이므로, 조건2 만족
- 조건 3 : 중복 함수종속성 제거
=> B → D 와 D → A 에 의해 B → A가 성립하므로 중복 함수 종속성 B → A 제거
따라서, 최종적인 최소 커버는 { D → A, B → D }
3) 풀이
- 조건 1 : A → C, AC → D, E → A, E → D, E → H (분해규칙 적용)
- 조건 2 : AC → D에서 A → D 혹은 C → D로 대치되는지 확인하면,
=> A → C에서 첨가규칙 적용하면, A → AC
따라서, A → AC와 AC → D에서 이행규칙에 의해 A → D가 되므로, AC → D는 A → D로 대치가능
=> 여기까지 정리하면, A → C, A → D, E → A, E → D, E → H
- 조건 3 : E → A와 A → D에서 이행규칙에 의해 E → D가 되므로, E → D는 중복 제거 가능
=> 최종 정리하면, F의 최소커버는 A → C, A → D, E → A, E → H
따라서, F와 G의 최소커버가 동일하므로 둘은 동등함
2018년 60번
답 : 2번
- 조건 1 : 만족함
- 조건 2 : BA → C에서 B → C 혹은 A → C로 대치되는지 확인하면,
=> A → B 에서 첨가규칙 적용하면, A → BA
따라서, A → BA와 BA → C에서 이행규칙에 의해 A → C가 되므로, BA → C는 A → C로 대치가능
=> 여기까지 정리하면, A → B, C → B, A → C
- 조건 3 : A → C와 C → B에서 이행규칙에 의해 A → B가 되므로, A → B는 중복 제거 가능
=> 최종 정리하면, F의 최소커버는 C → B, A → C
2019년 66번
정답 : 2번, 4번
폐포 개념을 이용하면, A, B는 후보키
결정자가 후보키가 아닌 함수종속은 E->CD, C->D
R1(A, B, E), R2(E, C), R3(C, D)
외래키에 해당하는 속성은 C, E
2020년 58번
정답 : 3번
E = {EABCD}
BC = {BCDEA}
BD = {BD}
CD = {CDEAB}
2020년 65번
정답 : 2번
함수적 종속석 FD 중 결정자가 모두 후보키인것은 2번
1) A 후보키 가능, B 후보키 불가
2) A 후보키 가능, B 후보키 가능
3) AB 후보키 가능, A 후보키 불가
4) AB 후보기 가능, C 후보키 불가
2021년 53번
정답 : 2번
후보키는 유일성과 최소성을 만족하는 키
1) A = {ABCDEFG}
2) BD = {BDE} -> 후보키 불가
3) CE = {CEABDFG}
4) BCD = {BCDEAFG}