데이터 다루기/Database
6. 데이터 정규화
분석벌레
2020. 11. 20. 18:12
728x90
1. 데이터 정규화
▶ 릴레이션에 데이터의 삽입, 삭제, 갱신 시 발생하는 이상 현상이 발생하지 않도록 릴레이션을 보다 작은 릴레이션으로 표현하는 과정
① 제1 정규형 (1NF)
▶ 모든 도메인이 원자 값으로만 된 릴레이션으로 모든 속성값은 도메인에 해당한다.
▶ 기본 키에서 부분 함수가 종속된 속성이 존재하므로 이상 현상이 발생할 수 있다.
② 제2 정규형 (2NF)
▶ 제1 정규형을 만족하고 모든 속성들이 기본 키에 완전 함수 종속인 경우
③ 제3 정규형 (3NF)
▶ 제 1, 2 정규형을 모두 만족하고, 모든 속성들이 기본 키에 이행적 함수 종속이 아닌 경우
▶ 이행 함수적 종속 (A -> B, B -> C, A -> C)을 제거한다.
④ 보이스-코드 정규형 (BCNF)
▶ 모든 BCNF 스킴은 3NF에 속하게 되므로, BCNF가 3NF보다 한정적 제한이 더 많다.
▶ 결정자가 후보 키가 아닌 함수 종속을 제거하며, 모든 BCNF가 종속성을 보존하는 것은 아니다.