데지덤

  1. 데이터관련 직무와 자격
    1. 데이터베이스 직무

    2. 데이터베이스 자격

  2. 데이터관련 학습방법
    1. 데이터베이스 개론 학습

    2. DBMS 학습

    3. 읽어볼만한 DB책

  3. 최신동향과 유명한 Things
    1. DB최신동향

    2. 데이터로 유명한 Things

  4. 데이터베이스 개념
    1. 데이터베이스 개념

    2. DBMS

    3. 데이터베이스 개발과운영

  5. 데이터베이스 설계(1/2)
    1. 데이터표준

    2. 데이터모델링

    3. 데이터모델 디자인패턴

  6. 데이터베이스 설계(2/2)
    1. 프로세스및상관모델링

    2. 정규화

    3. 반(역)정규화

    4. DB물리설계

  7. 인덱싱과 DB프로그래밍
    1. 인덱스와 해싱

    2. 관계연산

    3. DB언어

    4. SQL

    5. 데이터베이스 미들웨어

  8. 데이터베이스 운영
    1. 트랜잭션

    2. 병렬처리

    3. 데이터베이스 복구

    4. 데이터베이스 성능

    5. 병행제어(동시성제어)

  9. 분석계 및 빅데이터기술
    1. 데이터웨어하우스

    2. 데이터마이닝

    3. 빅데이터기술

  10. 데이터거버넌스
    1. 데이터거버넌스

    2. 데이터베이스 감리/진단

  11. 데이터베이스 종류와 보안
    1. 데이터베이스 종류

    2. 데이터베이스 보안

  12. DBMS
    1. 오라클

    2. SQL Server

    3. DB2

    4. Sybase

    5. Altibase

정규화개요

개념
관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고 데이터의 일관성과 정확성을 유지하기 위한 과정이며 속성들간의 종속성을 분석하여 기본적으로 하나의 종속성이 하나의 릴레이션으로 표현되도록 분해해 나가는 과정으로 이상현상을 야기하는 애트리뷰트 간의 종속관계를 제거하기 위해 릴레이션을 작은 릴레이션으로 무손실 분해하는 것

1.Anormaly 현상을 해결하기 위한 무손실 분해의 원리, 정규화의 개요

 

  가. 정규화(Normalization)의 정의

-관계형 데이터 모델에서 데이터의 중복성을 제거하여 이상 현상을 방지하고 데이터의 일관성과 정확성을 유지하기 위한 과정

-속성(Attribute)들간의 종속성(Dependency)을 분석하여 기본적으로 하나의 종속 성이 하나의 릴레이션(Relation)으로 표현되도록 분해해 나가는 과정

-이상 현상(Anomaly)을 야기하는 Attribute 간의 종속 관계를 제거하기 위해 Relation을 작은 Relation으로 무손실 분해하는 과정

 

  나. 정규화의 필요성

-중복의 제거로 저장 공간의 최소화

-종속성 삭제로 일관성 및 무결성 보장

-자료의 삽입, 갱신 및 삭제에 따른 이상현상(Anormaly) 제거

-데이터 신규 발생시 DB 재구성의 필요성을 감소(유연한 구조)

-연관관계 이용한 관리 및 이해 편리

 

다. 정규화의 원칙

구 분

설 명

정보의 무손실

분해된 Relation이 표현하는 정보는 분해되기 전의 정보를 모두 포함하고 있어야 하며, 보다 더 바람직한 구조여야 함

데이터 중복성 감소

 중복으로 인한 이상 현상의 제거

분리의 원칙

 하나의 독립된 관계성은 하나의 독립된으로 분리하여 표현

 

 

2. 함수종속성의 개념 및 절차

 

  가. 함수종속성(FD: Functional Dependency)의 개념

-데이터들이 어떤 기준값에 의해 종속되는 현상을 지칭

-이때 기준값을 결정자(determinant)라 하고 종속되는 값을 종속자/의존자 (dependent)라고 함

-부분함수종속(partial functional dependency) : 한 개 또는 그 이상의 속성이 Primary key(PK) 의 일부분에 함수적으로 종속하는 것

 

 

 

  나. 종속성의 유형

유 형

내 용

함수적 종속성

(Functional Dependency)

완전함수종속성

Full Functional Dependency

릴레이션의 한 속성 X가 다른 속성 Y를 결정지을 때 Y는 X에 함수적으로 종속됨

부분함수종속성

(2NF)

X->Y에서 Y가 X의 부분집합에 대해서도 함수적으로 종속됨

이행함수적종속성

(3NF)

릴레이션 R에서 속성 A->X이고, X->Y이면 A->Y임

결정자함수적종속성

(BCNF)

함수적 종속이 되는 결정자가 후보키가 아닌 경우, 즉 X->Y에서 X가 후보키가 아님

다중값 종속성

(Multivalued Dependency : 4NF)

 한 관계에 둘 이상의 독립적 다중값 속성이 존재하는 경우

 X, Y, Z 세 개의 속성을 가진 릴레이션 R에서 속성 쌍 (X, Y) 값에 대응하는 Y값의 집합이 X값에만 종속되고 Z값에는 독립이면 Y는 X에 다중 값 종속된다고 하고 X->>Y로 표기

결합 종속성

(Join Dependency : 5NF)

 관계 중에서 둘로 나눌 때에는 원래의 관계로 회복할 수 없으나셋 또는 그 이상으로 분리시킬 때원래의 관계를 복원할 수 있는 특수한 경우임

 

 

3. 정규화의 절차 및 유형

 

  가. 정규화(Normalization)의 절차

  • 정규화는 데이터들의 함수의 종속성을 이용하여 데이터 모델링을 최적화하는 과정을 의미함

 

  나. 정규화의 유형

구분

단계

내용

특성

기초적 정규화

1차 정규화

(1NF)

 반복되는 속성 제거

  R에 속한 모든 도메인이 원자값(atomic value)만으로 되어있는 경우

데이터간 중복성이 강함

     

데이터간 결합성이 강함

2차 정규화

(2NF)

부분함수 종속성 제거

릴레이션 R이 1NF이고 릴레이션의 기본키가 아닌 속성들이 기본키에 완전히 함수적으로 종속할 경우

결정자가 2개 이상일 때, 2개 중에서 하나의 결정자에 의해서만 함수종속성인 경우

3차 정규화

(3NF)

이행함수 종속성 제거

릴레이션 R이 2NF이고 기본키가 아닌 모든 속성들이 기본키에 대하여 이행적 함수 종속성(Transitive FD)의 관계를 가지지 않는 경우, 즉 기본키 외의 속성들간에 함수적 종속적을 가지지 않는 경우

종속자들 간의 함수종속성이 있는 경우

BCNF

(Boyce/Codd NF)

결정자함수 종속성 제거

릴레이션 R의 모든 결정자가 후보키일 경우

결정자들 간의 함수적 종속이 있는 경우

진보적 정규화

4차 정규화

(4NF)

 다중값 종속성 제거

릴레이션 R에 MVD A ->> B가 존재할 때 R의 모든 애트리뷰트들이 이 A에

함수종속 (즉, R의 모든 애트리뷰트 X에 대해 A->X이고 A가 후보키)이면 릴레

이션 R은 제4정규형(4NF)에 속한다.

BCNF를 만족시키면서 다중값 종속을 포함하지 않는 경우

5차 정규화

(5NF)

결함 종속성 제거

릴레이션 R에 존재하는 모든 조인 종속(JD)이 릴레이션 R의 후보키를 통해서만

성립된다면 릴레이션 R은 제5정규형(5NF) 또는 PJ/NF(Project-Join

Normal Form)에 속한다.

4NF를 만족시키면서 후보키를 통해서만 조인 종속이 성립되는 경우

 

종속성 구분

주 요 개 념

함수적

종속성

(FD)

함수적 종속성

(Functional Dependency)

 릴레이션의  한 속성 X가 다른 속성 Y를 결정지을 때  Y는 X에
  함수적으로 종속됨, X->Y

 X는 결정자(determinant), Y는 종속자(dependent)

부분함수적

종속성 (2NF)

 X->Y에서  Y가 X의  부분집합에  대해서도 함수적으로  종속
  되는 경우

이행함수적

종속성 (3NF)

 릴레이션 R에서 속성  A->X이고  X->Y이면   A->Y 임

결정자 함수적 종속성 (BCNF)

 함수적 종속이 되는 결정자가 후보키가 아닌 경우

 즉, X->Y에서 X가 후보키가 아님

다중값 종속성

(MVD:Multi-Valued Dependency, 4NF)

 한 관계에 둘 이상의 독립적 다중값 속성이 존재하는 경우

 X, Y, Z 세 개의 속성을 가진 릴레이션 R에서 속성 쌍 (X, Z)
  값에 대응하는 Y 값의 집합이 X값에만 종속되고 Z값에는
  독립이면 Y는 X에 다중값 종속된다고 하고 X ->> Y 로 표기

조인 종속성

(JD:Join Dependency, 5NF)

 관계 중에서 둘로 나눌 때는 원래의 관계로 회복할 수 없으나,
  셋 또는 그 이상으로 분리시킬 때 원래의 관계를 복원할 수 있
  는 특수한 경우임

 

 

댓글