데이터베이스 모델링

1 분 소요

데이터베이스 바로가기

데이터베이스 모델링의 이해

  1. 비즈니스적 관점
    • 어떤 데이터를 저장해야 하는가?
  2. 컴퓨터 프로그래머 관점
    • 어떻게 데이터를 저장해야 하는가?

데이터베이스 모델링의 개념

  1. 데이터의 의미를 파악하고, 데이터와 / 업무 프로세스를 개념적으로 정의하고 분석하는 작업
  2. 모델링의 단계
    • 사용자 요구사항 분석
      • 제안요청서 => 요구사항 도출 : 업무관계자 인터뷰
      • 요구사항 명세서 => 요구사항 분석 : 요구사항 명확성, 완전성, 모호성 검증, 부완전할 시 다시 요구사항을 도출해야함
      • 요구사항 정의서 => 요구사항 기록 : 요구사항 목록 정리하여 문서화하고 지속적으로 관리 해야함
    • 개념적 데이터 모델링 (ER 모델)
      • 요구사항의 해석 오류를 방지
      • 데이터를 개념적으로 일반화 시켜 데이터 구조, 데이터타입, 속성, 관계 제약조건 등을 이끌어내는 과정
    • 논리적 데이터 모데링
      • 특정 DBMS의 구현 모델에 맞춰 데이터를 표현하는 과정
      • 데이터 정의 언어로 기술된 개념 스키마 생서
    • 물리적 데이터 모델링
      • 데이터베이스의 내부 저장구조, 파일구성, 인덱스, 접근 경로 등을 결정하는 과정
    • 내부 스키마

데이터 모델이란

  • 의미, 데이터 타입, 연산 등을 명시하기 위해 사용할 수 있는 개념들의 집합

ER 모델

  • 실세계의 속성들로 이루어진 개체와 개체 사이의 관계를 정형화시킨 모델
  • 개념적 모델링 단계에서 사용되는 데이터 모델
  • 데이터 구조와 관계를 ER 다이어그램(ERD)으로 표현
  • 구성요소
    • 개체 집합
      • 개체를 중심으로 같은 속성을 공유하는 개체들의 모임이다.
    • 관계 집합
      • 개체와 개체 사이의 연관성을 갖는 개체 집합 간의 연결 관계
    • 속성
      • 개체를 구체적으로 설명
      • 단순 속성 : 더 작은 구성요소로 나눌 수 없는 속성 EX) 이름, 나이 등…
      • 복합 속성 : 더 작은 구성요소로 나눌 수 있는 속성 EX) 생년월일 => 년, 월, 일로 나눌수 있음..
      • 단일값 속성 : 한 개체에 대해 단 하나의 값만을 갖는 속성 EX) 이름, 생년월일 등 의미는 딱하나! 내가 태어난날, 내 이름 등…
      • 다중값 속성 : 한 개체에 대해 여러 개의 값을 갖는 속성 EX) 전화번호(집전화, 사무실전화, 핸드폰)

제약조건

  1. 사상수
    • 한 개체가 다른 개체와 관계를 맺을 수 있는 수량을 명시 (1:N, N:N, N:1)
  2. 키속성
    • 각 개체를 구별하는데 사용하는 유일한 값을 가지는 속성의 집합
  3. 참가 제약조건
    • 전체적 참가 : 어떤 개체 집합의 모든 개체가 관계 집합에 참여하는 조건 (이중선으로 표현)
    • 부분적 참가 : 어떤 개체 집합의 일부 개체가 관계 집합에 참여하는 조건

댓글남기기