DB7-1 함수적 종속과 분해

박정빈·2024년 6월 12일

DB

목록 보기
8/9

1. 정규화

함수적 종속 집합의 폐포(Closure)

  • 주어진 함수적 종속 집합 F가 다른 특정 함수적 종속을 보존하고 있을 경우, 이러한 함수적 종속을 F에 의해 논리적으로 함축되었다(Logically Implied)라고 한다.
  • FF를 함수적 종속 집합이라고 할 때 FF의 폐포는 F+F^+로 표현, 이는 F로 부터 추론 가능한 모든 함수적 종속 집합을 의미한다.
  • 후보키를 구하기 위해서 Closure를 먼저 구한다.
  • 예시

속성 집합의 폐포(Closure)

  • αα를 속성의 집합이라고 할 때,
    함수적 종속 관계의 집합 FF에서 αα가 함수적으로 결정하는 속성들의 집합을
    FF하에서의 αα에 대한 폐포(Closure) α+α^+라고 한다.
  • 예시

속성 폐포의 사용

  • 슈퍼키 확인

    • αα가 슈퍼키인지 검사하기 위해 α+α^+를 구하고, α+α^+=R 인지 확인
    • (AG)+^+ = ABCGHI = R이므로 AG는 슈퍼키
  • 후보키 확인

    • αα가 후보키인지 검사하기 위해,α+α^+=R이지만, αα의 어떤 부분 집합의 폐포도 R이 되지 않는지 확인
    • (AG)+^+=ABCGHI=R이지만, A+^+=ABCH ≠ R이고 G+^+=G≠R이므로, AG는 후보키
  • 함수적 종속 확인

    • 함수적 종속 α → β 가 존재한다는 것은 β ⊆ α+인지를 알아봄으로써 확인할 수 있다.
    • R이함수적종속A → CH를만족하는가?:A+^+=ABCH(즉,CH⊆A+^+)이므로 A→CH가 R에 존재

2. 무손실분해

3. 함수종속성

  • 릴레이션 R이 R1_1,R2_2,...,Rn_n으로 분해되었을 때, 함수적 종속 집합 F도 각 릴레이션에 속한 속성만을 포함한 함수적 종속 집합 F1_1,F2_2,...,Fn_n으로 분해
  • 이때, F’ = F1 ∪ F2 ∪ … ∪ Fn이라고 하면, 일반적으로 F ≠ F’
  • 그러나F ≠ F’ 이지만, F+^+ = F+^+’ 가 될 수 있으며, 이 경우 종속성 보존 분해라고 함
  • 분해되기 전의 함수적 종속들이 분해된 후에도 유지되어야 한다.
  • 예시

4. 관계형 데이터베이스 설계의 원칙

0개의 댓글