데이터베이스 설계의 개요

반응형
  • 설계 단계
    • 데이터 베이스는 많은 양의 데이터를 관리하기 위해 설계된 것으로, 여러 응용 시스템들이 고용할 수 있도록 통합 및 저장된 운영 데이터의 집합
    • 데이터베이스의 목적은 데이터의 독립성 확보, 데이터 중복의 최소화, 데이터의 공동 이용의 확대
    • 데이터베이스 설계자는 사용자의 요구 사항을 알기 위해 사용자들과 충분한 의사소통이 필요
    • 사용자가 이해할 수 있도록 표준화된 기호(Symbol)를 사용
    • 사용자의 요구 사항을 시스템에서 제공할 모습으로 알맞게 변형해야 함
         
  • 설계의 단계별 활동
    • 요구 사항 분석 및 정의
      사용자가 필요로 하는 데이터의 용도를 파악하여 요구 사항 명세서 작성
    • 개념적 설계
      • 사용자 요구 사항으로부터 데이터베이스의 개념적 스키마 생성(예, E-R도형 작성)
      • DBMS 독립적, 하드웨어 독립적
    • 논리적 설계
      • 개념적 스키마로부터 목표 DBMS가 처리할 논리적 스키마 생성
      • DBMS 종속적, 하드웨어 독립적
    • 물리적 설계
      • 논리적 스키마로부터 데이터베이스의 물리적 속성을 구체화한 물리적 스키마 생성
      • DBMS 종속적, 하드웨어 종속적
    • 데이터베이스 구현
      • 실제로 DBMS DDL을 사용하여 데이터베이스 테이블 생성
      • DBMS 종속적, 하드웨어 종속적
           
  • 데이터베이스 설계 시 주의 사항
    • 애매한 추상적인 개념을 관리가 가능한 작은 단위로 분해해야 명확한 설계가 가능
    • 하위로 분해한 후 상위에서 도출한 속성의 손실이 발생하면 안 됨
    • 하위로 분해한 후 상위 릴레이션이 가지는 함수적 종속성의 손실이 발생하면 안 됨
    • 분해한 하위 집합의 릴레이션들을 자연 조인했을 때 가짜 튜플이 생성되지 않아야 함
      • 무손실 조인(Lossless Join) 분해 특성을 만족해야 함
        • 무손실 조인 분해 - 릴레이션 R의 프로젝션인 R1, R2가 자연 조인(NATURAL JOIN)을 통해 원래의 테이블 R로 정보 손실없이 복귀되는 경우 R은 R1과 R2로 무손실 조인 분해되었다고 함.
    • 지나치게 분해했을 경우 허상 튜플(Dangling Tuple)을 주의        
      • 허상 튜플 - 두 개의 릴레이션 중 하나의 릴레이션에만 존재하여 조인 연산이 적용되면 사라지는 경우이거나, 외래키에 NULL 값이 존재하면 조인 시 정보가 삭제 되는 경우
    • 같은 정보가 여러 번 반복해서 표현되는 것은 좋지 않으므로 중복성을 제거
    • 조직의 특성을 충분히 반영하지 못한 불완전성을 제거
반응형