데이터베이스

함수종속, 정규화_무손실 조인 분해(lossless-Join decomposition)

스윙스윙 2021. 9. 17. 19:56

▣ 함수종속, 정규화_무손실 조인 분해(lossless-Join decomposition)

 - 무손실 조인 분해는 하나의 릴레이션을 분해하고 다시 조인연산을 했을 때 데이터 손실이 없는 것을 뜻함

- R = (A, B, C)에서 R1 = (A, B),   R2 = (B, C) 으로 분해 했을 때,

  R1 ∩ R2 가 R또는 R의 키이면 무손실 분해이다.

  R1 ∩ R2 ={B} 이고, B는 R2의 키 이므로 무손실 분해이다.

 

- R = (A, B, C) 

F = {A B, B C)에서 R1 = (A, B),   R2 = (B, C) 으로 분해 했을 때 무손실 분해이며,

종속성 보존이 된다.

구분 릴레이션 분해 무손실 분해 여부
분해 1 특강수강(학생번호, 특강이름, 교수)
→ R1(학생번호, 교수), R2(교수, 특강이름)
R1과 R2의 공통 속성은 교수이며,
교수는 R2의 키이다.
→ 무손실 분해 규칙을 만족
분해 2 특강수강(학생번호, 특강이름, 교수)
→ R3(학생번호, 특강이름), R2(교수, 특강이름)
R3와 R4의 공통 속성은 특강이름이지만,
특강이름은 R3나 R4의 키가 아니다.
→ 무손실 분해 규칙을 만족하지 않음

 

■ 정규화 정의/원리

데이터 이상현상(anomaly)을 야기하는 속성 간의 종속성(dependency) 분석해서 하나의 릴레이션에는

기본적으로 하나의 종속성이 표현되도록 분해(decomposition)하는 과정

 

정규화의 원리

- 분리의 원칙(principle of separation) : 하나의 독립된 관계성은 별도의 릴레이션으로 분리시켜 표현

- 정보 표현의 무손실(nonloss representation of information) : 변환된 스키마가 표현하는 정보는 변환되기 전

정보를 모두 포함하고 있어야 함

- 최소의 데이터 중복(minimal data redundancy) : 중복으로 인한 여러가지 이상현상이 제거 되어야 함

 


2018년 56번

정답 : 2번

하나의 릴레이션 R을 R1, R2로분해하고 다시 조인연산을 했을 때 데이터 손실이 없는 상태
무손실 조인분해를 만족하려면 R1 ∩ R2 → R1 이나 R1 ∩ R2 → R2 중 하나를 만족

(두 릴레이션의 공통 속성이 R1, R2 중 하나의 키를 포함해야 함)
R1(A, B, C), R2(C, D) 의 공통속성인 C는 C→D 이므로 R2의 키를 포함하고 있다.

 


 

2021년 74번

정답 : 2번

1번, 4번은 정규화의 원리에 따라 맞음

3번은  R1 ∩ R2과 R1과 R2의 공통 속성이고 두 릴레이션이

참조 관계에 있는 속성이므로, 두 릴레이션 중 하나의 기본키가 되어야 함

기본키는 수퍼키가 될 수 있음

기본키가 R1인지 R2인지는 문제 지문내용으로 구분할 수 없기 때문에 틀린설명은 아님

2번은 R1 ∩ R2 -> R1과 R1 ∩ R2 -> R2를 동시에 만족한다는 것은 공통 속성 R1 ∩ R2 가 분해한 두 릴레이션 R1과 R2의 기본키여야 한다는 의미임 / 이는 정규화 원리에 맞지 않으므로 틀린 설명임 /둘 중 하나의 키본키여야 함