데이터베이스 개론 - 4. 데이터 모델링

김재혁·2023년 3월 31일

데이터 모델링과 데이터 모델의 개념

  • 데이터 모델링: 현실 세계의 데이터를 DB로 옮기는 변환 과정 (추상화/Virtualization)
    - 개념적 모델링: 현실세계에서 중요 데이터를 추출하여 개념적 정의 만들기
    - 논리적 모델링: 개념적 정의를 바탕으로 DB에 저장할 구조를 결정하고 구현하기

  • 데이터 모델: 데이터 모델링의 결과물을 표현하는 수단

  • 데이터 모델의 구성요소
    - 연산
    - 데이터 구조
    - 제약 조건

  • 개념적 데이터 모델 중 많이 사용하는 E-R 모델
  • 논리적 데이터 모델 중 많이 사용하는 관계 데이터 모델

개체 관계 모델 (Entity-Relationship Model)

개체 (Entity)

  • 사람, 사물 등 조직을 운영하는데 필요하여 구별되는 것
  • 개념/사건처럼 개념적으로만 존재하는 것도 포함


속성 (Attribute)

  • 개체가 가지고 있는 고유한 특성
  • 자체만으로는 의미가 없지만 모여서 객체를 구성하면 하나의 중요한 의미를 표현함.
  • 데이터의 가장 논리적인 단위
  • 유도 속성 (판매가격 = f(가격, 할인율); 가격, 할인율에 유도될 수 있음) 은 점선 타원
  • 키 속성은 밑줄

관계 (Relationship)

  • 선 + 마름모

  • 관계의 유형:
    - 일대일
    - 일대다
    - 다대다

  • 관계의 참여 특성
    - 관계 A와 관계에 참여하는 두 개체 a, b가 있을 때, 모든 A에 a의 모든 인스턴스가 참여한다면, a가 A에 필수적으로 참여함
    - ex) 모든 구매에는 고객이 필수적으로 필요함
    - 필수 참여 = 두 줄

  • 관계의 종속성 (Existential Dependency)
    - 객체 B가 혼자 존재할 수 없고, 다른 객체 A가 있어야만 존재할 수 있다면 B는 A에 의존적임
    - ex) 학생이 있어야 학부모가 존재함
    - 의존하는 객체 (학부모) 를 Weak Entity, 의존되는 객체 (학생)을 Strong Entity라고 지칭 함.
    - 주로, 강한 객체 1개에 약한 객체가 여러 개 참여하는 일대다 관계이고, 약한 객체는 강한 객체와 관계에 필수적으로 참여함.
    - 약한 객체 -> 이중선

논리적 데이터 모델

논리적 데이터 모델의 개념과 특성

  • E-R 모델은 개념적 모델임 => 어떤 논리적 모델을 사용하던 관계 없음.
  • 논리적 모델 = 스키마
  • 주로 관계형 테이블로 표현

  • 계층 데이터 모델, 네트워크 데이터 모델 등으로도 표현 가능.
  • 관계형 데이터 모델을 활용한 논리적 데이터 모델링은 다음 장에서.
profile
NUS Computer Science

0개의 댓글