ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 정규화 (Normalization)
    Data 2025. 2. 15. 01:45

     

    정규화 (Normalization)

    데이터베이스 설계에서 데이터를 중복 없이 효율적으로 저장하기 위한 과정
    데이터의 일관성을 유지하고, 무결성을 높이며, 업데이트, 삭제, 삽입 시 발생할 수 있는 이상 현상을 방지

     

     

    반 정규화 (Denormalization)

    정규화된 데이터베이스 구조에서 일부러 데이터 중복을 허용하거나, 여러 테이블을 결합하여 성능을 최적화하는 과정

     

     


     

    1차 정규형 (1NF, First Normal Form)

    • 테이블에 있는 모든 필드가 원자값 (Atomic Value)을 가진다
    • 하나의 컬럼에는 하나의 값만 있어야 하며, 배열이나 집합과 같은 복합 데이터는 사용하지 않는다 (각 행이 고유하고 중복되지 않으며, 각 열은 단일 값으로 구성)
       

     


     

    2차 정규형 (2NF, Second Normal Form)

    • 기본 키에 대해 부분 함수 종속 (Partial Dependency)을 제거
    •  기본 키의 일부가 아닌 모든 속성이 기본 키에 완전히 종속되어야 한다. (기본 키의 일부만으로 결정되는 컬럼을 다른 테이블로 분리)

     


     

    3차 정규형 (3NF, Third Normal Form)

    • 비기본 키 속성 간의 이행적 함수 종속 (Transitive Dependency)을 제거
    • 테이블의 모든 비기본 키 속성이 다른 비기본 키 속성에 의존하지 않도록 해야 한다.

     


     

    BCNF (Boyce-Codd Normal Form)

    • 3차 정규형을 만족하고, 모든 결정자가 후보 키로 구성됨
    • 모든 결정자가 후보 키이어야 하므로, 모든 비기본 키 속성이 다른 비기본 키 속성에 영향을 미치지 않도록 해야 한다.

     


     

    4차 정규형 (4NF)

    • 목표: 다치 종속 (Multivalued Dependency)을 제거
    • 설명: 하나의 행에서 여러 개의 독립적인 값을 저장하는 경우 이를 분리하여 처리

     


     

    5차 정규형

    • 조인 종속성을 제거하여 데이터를 더 이상 분해할 수 없도록 만듬 (테이블 간의 관계를 더 잘 나타내기 위해 데이터를 분리)
    • 즉, 다수의 테이블에 분리된 데이터를 결합할 때, 원본 데이터를 다시 조합할 수 있도록 구조화된 형태

    댓글

Designed by Tistory.