Home Database normalizaton
Post
Cancel

Database normalizaton

정의

데이터베이스 내의 애트리뷰트 간의 종속성을 분석해서 하나의 종속성이 하나의 릴레이션으로 표현되도록 분리하는 과정

목적

  • 중복된 데이터를 제거
  • 삽입,삭제,갱신 이상의 발생을 방지

Anomaly의 개념 및 종류

  • 삽입이상 : 릴레이션에 데이터를 삽입할때 의도와는 상관없이 원하지 않은 값들도 함께 삽입

  • 삭제이상 : 릴레이션에서 한 튜플을 삭제할 때 의도와는 상관없는 값들도 함께 삭제되는 연쇄 삭제 현상이 발생

  • 갱신이상 : 릴레이션에서 튜플에 있는 속성값을 갱신할 때 일부 튜플의 정보만 갱신되어 정보에 모순이 생기는 현상

Functional dependency

어떤 테이블 R에 존재하는 필드들의 부분집합을 X와 Y라 할때, X의 한값이 Y에 속한 오직 하나의 값에만 맵핑될 경우 Y is functionally dependent on X 라고 한다. 이때 X를 determinant(결정자), Y를 dependent(종속자)라 한다.

Fully-functional dependency

어떤 테이블 R에 존재하는 필드들의 부분집합을 X와 Y라 할때, Y is functionally dependent on X but is not functionally dependent on part of X then Y is fully functionally dependent on X. Y가 X에 함수적 종속적이면서, X의 일부에는 함수적 종속적이지 않을때, Y는 X에 완전 함수적 종속적이라고 말함.

정규화 과정

  • 1NF : 모든 도메인이 원자값(atomic value)으로만 구성

  • 2NF : 1NF이고, 기본키가 아닌 모든 attribute가 기본키에 대해서 fully functionally dependent

  • 3NF : 2NF이고, 기본키가 아닌 모든 attribute가 기본키에 대해 not transitively dependent

  • BCNF : 릴레이션 R에서 결정자가 모두 후보키인 관계형

This post is licensed under CC BY 4.0 by the author.

Schema,Data Independence

DB와 File System의 차이

Comments powered by Disqus.

Trending Tags