정규화(Normalization) - 정규화의 원칙, 특징

CODEDRAGON Development/Database

반응형

   

   

정규화(Normalization)

  • 스키마 변환을 통해서 일련의 제약 조건을 만족하는 릴레이션을 만드는 과정
  • 속성들 간의 종속성을 분석해서 하나의 릴레이션에는 하나의 종속성만 갖도록 릴레이션을 분해하는 과정(중복성을 최소화하고 정보의 일관성을 보장하기 위한 개념)
  • 갱신 이상의 발생 요인인 데이터 중복을 최소화하기 위해서 일종의 제약조건을 기초로 릴레이션을 분해하는 과정
  • 불필요한 데이터 중복을 제거해서 논리적 데이터 모델을 단순화시키는 과정
  • 정규화에 대해서는 다양한 정의가 가능하지만 기본적으로 불필요한 데이터 중복을 제거하여 갱신이상 현상을 없애는 것을 의미합니다.

   

   

정규화의 원칙

  • 데이터의 중복을 최소화함
  • 정보가 사라지지 않아야 함 (정보의 무손실)
  • 같은 의미의 정보를 유지하면서 더 바람직한 구조로 변환해야 함
  • 독립적인 관계는 별개의 릴레이션으로 표현함
  • 릴레이션 각각에 대해 독립적인 조작이 가능해야 합니다.

 

  • 데이터 중복 배제로 데이터 관리 편의성 제고 및 자료 저장 공간의 최소화
  • 데이터 모형 단순화
  • 데이터 구조의 안정성 및 무결성 유지
  • 속성의 배열상태 검증
  • 엔터티와 속성의 누락 여부 검증 수단
  • 자료검색과 추출의 효율성을 추구

   

   

   

특징

  • 어떠한 관계구조가 바람직한 것인지, 바람직하지 못한 관계를 어떻게 분해하여야 하는지에 관한 구체적인 판단기준을 제공
  • 정규화된 데이터 모델은 정확성, 일치성, 단순성, 비중복성, 안정성 보장