07 정규화 II

데이터베이스 2016. 3. 10. 22:53
  1. 정규화

    7.1 기본 정규형

       

  • 제1정규형
    • 릴레이션의 모든 속성이 단일 값으로 구성되어야 하는 조건
    • 정의

      어떤 릴레이션 스키마에서 정의된 모든 속성의 도메인이 원자값을 갖는 상태

         

  • 함수적 종속성 판별

       

  • 함수적 종속성 다이어그램
    • 릴레이션 내의 속성간의 종속 관계를 직관적으로 이해하기 쉽게 도식화 한 표현방식
      • 직사각형: 속성 또는 속성 집합
      • 화살표: 함수적 종속성

  • 제2정규형
    • 릴레이션이 제1정규형을 만족하고 기본키의 부분집합이 특정 속성을 종속하고 있지 않을 때 제 2정규형이라고 함
    • 정의

      주어진 릴레이션의 인스턴스가 제1정규형을 만족하고 기본키가 아닌 속성들이 기본키에 완전히 종속되어 있는 상태

    •    

  • 릴레이션의 무손실 분해
    • 임의분해 시 발행하는 문제점
      • 불필요한 조인이 발생
      • 분해된 릴레이션을 사용하여 원래 릴레이션을 재구성 하지 못하는 경우
    • 무손실 분해
      • 어떤 릴레이션 스키마 𝑅에 함수적 종속성 𝑋→𝑌가 존재하고 𝑋∩𝑌= 이면, 𝑅𝑅−𝑌𝑋𝑌로 분해하는 것을 무손실 분해라고 함
    • 도크관리 릴레이션 무손실 분해
      • {도크번호}{도크관리자}
      • {도크번호}{도크관리자}=

      => 도크관리 - {도크관리자}, {도크번호, 도크관리자}로 분해

         

  • 제3정규형
    • 정의

      릴레이션이 제2 정규형을 만족시키고, 기본키가 아닌 속성들이 어떤 키에도 이행적으로 종속되지 않은 상태

      이행적 종속성 - 𝑋→𝑌이고 𝑌→Z이면 𝑋→Z이다

         

    •    

      • {도크번호, 입항시간} {목적}
      • {목적}{담당도선사}

        => {도크번호, 입항시간} {담당도선사}

           

         

         

       

       

  • BC정규형
    • 정의

      릴레이션이 제3정규형을 만족하고 릴레이션에서 성립하는 xY형태의 모든 함수적 종속성에 대하여 x가 슈퍼키인 상태

    • 입출항관리 릴레이션의 함수적 종속성
      • {도크번호, 입항시간} {목적}
      • {도크번호, 입항시간} {출항시간}
      • {목적} {도크번호}

   

   

   

   

   

7.2 추가적인 정규형

  • 다중치 종속성
    • 다중치 종속성의 원인은 릴레이션 속성값이 원자값만을 가져야 하는 제1정규화 제약조건
    • 다중값 속성을 허용하지 않으면 한 번만 삽입될 레코드가 다른 속성들의 값과 같이 매번 중복되어 저장하는 문제가 발생 함
    • 릴레이션 R1, R2, R3 사이에 일대다 관계가 존재하면, R1, R2, R3가 한 릴레이션으로 합쳐지면

      다중치 종속성이 발생 함

         

  • 제4정규형
    • 정의

      릴레이션의 스키마 R의 종속성 집합 F에 대한 F+의 모든 자명하지 않은 다중치 종속성 X→→Y에 대하여 X가 P의 슈퍼키인 상태

         

    • 도선사 릴레이션의 다중치 종속성
      • 도선사명 →→ 선박종류
      • 도선사명 →→ 자격증

           

       

  • 조인종속성
    • 릴레이션을 분해하여 생성된 릴레이션과 원래 릴레이션의 관계를 검사하여 얻음
    • 정의

      릴레이션 스키마 R을 R1, R2,…, Rn으로 분해 시 R1 R2 Rn = R을 만족하면

      R1, R2,…, Rn은 R에 대해 조인종속성을 가짐

    • 표기
      • *({도선사명, 선박종류}, {도선사명, 자격증})

        =>분해되기 전의 도선사 릴레이션에 대하여 조인종속성을 가짐

           

  • 제5정규형

       

'데이터베이스' 카테고리의 다른 글

09 인덱싱과 해싱 I  (0) 2016.03.11
08 데이터 저장과 파일  (0) 2016.03.11
06 정규화 I  (0) 2016.03.10
05 SQL  (0) 2016.03.09
04 관계형 모델  (0) 2016.03.09
Posted by redcode.
,