normalization proof

정규화는 테이블을 나눈 뒤 다시 붙여 검증해야 끝난다

이상 현상을 줄이기 위해 릴레이션을 분해하더라도, 공통 속성으로 다시 조인했을 때 원래 정보가 사라지거나 가짜 행이 생기면 올바른 분해가 아닙니다.

원본

릴레이션과 FD 수집

후보키, 부분 함수 종속, 이행 함수 종속을 먼저 표시합니다.

분해

주제별 테이블 분리

반복 속성과 비키 속성 간 종속을 기준으로 릴레이션을 나눕니다.

재조인

공통 속성으로 붙이기

R1 ∩ R2가 한쪽의 키인지 확인해 가짜 튜플 생성을 막습니다.

보존

FD 검사 위치 확인

원래 중요한 함수 종속을 각 분해 테이블에서 검증할 수 있는지 봅니다.

이상 현상

삽입·수정·삭제 재점검

분해 후에도 같은 이상 현상이 남으면 정규화 목적을 달성하지 못한 것입니다.

검증 순서
FD 찾기 키 확인 무손실 조인 종속 보존

분해 자체보다 분해가 정보를 보존하는지 증명하는 단계가 더 중요합니다. 무손실 조인과 종속 보존은 서로 다른 검증입니다.

BCNF 주의

무손실을 우선하면 종속 보존을 일부 포기할 수 있습니다

3NF는 종속 보존을 더 고려하고, BCNF는 모든 비자명 FD의 결정자가 슈퍼키인지 더 엄격하게 봅니다.