Darren's Devlog

1. 데이터 모델링이란? 본문

데이터모델링

1. 데이터 모델링이란?

Darren Gwon 2022. 9. 24. 19:22
반응형

데이터모델

  • 현실세게의 정보나 데이터를 시스템으로 구축하기 위해 추상화하여 체계적으로 표현한 모형
  • ex) 주문영수증에 포함된  데이터를 형상화(모형화)하여 표현

 

데이터모델링

  • 영속성(어떠한 경우에도 손실되지 않고 영구적이어야 함, permanency)을 갖는 데이터에 대한 시스템 구조를 사람이 이해할 수 있도록 형상화하는 과정

 

데이터모델링 과정

  • 현행 업무 파악 후 개념들을 정리하고 분류하여 엔티티, 속성, 관계로 형상화 
  • 정보 -> 식별과정(개념적) -> 기호로 표현 -> 추상화(논리적) -> DB구체화(물리적)

 

데이터모델 종류

  • 개체관계(Entity-Relationship) 모델: 가장 대표적인 데이터 모델. 데이터 모델링으로 주로 사용
  • 관계(Relational) 모델: 관계 관리를 위한 데이터 모델. 데이터 저장, 관리에 활용
  • 계층(Hierarchinal) 모델
  • 망(Network) 모델

 

ER모델

  • 표현하고자 하는 현실 세계의 업무를 개체(또는 실체, Entity)와 관계(Relationship) 두 가지 개념으로 표현하는 모델
  • ERD는 ER모델을 도식화한 것으로, 실체와 이들 간의 관계를 데이터 모델 표기법을 사용해 알기 쉽도록 표현한 것

 

ER모델의 질적 특성

  • 완전성(Completeness)
    • 현실세계의 모든 업무적 요구사항을 표현하고 있어야한다.

 

  • 정확성(Correctness)
    • ER모델 개념을 정확히 적용시켜야 한다.
      • 엔티티 대신 속성 사용X
      • 명확한 관계
      • 상속 표현
      • 관계와 관련된 개별 엔티티 명확히 정의
      • 관계 대신 엔티티 사용X
      • 실체의 식별자 명확
      • Cardinality와 Optionality 명확히 표현

 

  • 최소성(Minimality)
    • 요구사항의 모든 특성이 ER모델에 한번만 나타나도록 설계
    • 중복있을 시 문서화 필요

 

  • 자명성(Self-Explanation)
    • 요구사항에 대한 뜻이나 의미를 별도 설명이나 증명없이 명확히 설명할 수 있어야한다.

 

  • 확장성(Extensibility)
    • 새로운 요구사항을 쉽게 반영할 수 있도록 요연한 모델(추상화)을 설계해야한다.
    • 엔티티를 일반화하여 엔티티 통합하는 방법이 있다.
      • 일반화: 엔티티 각각이 가지고 있는 고유한 특징을 일반화하여 공통의 속성으로 재정의한 것
      • 공통적인 의미에 가깝다.
      • ex)개인과 기업의 공통적인 성경을 묶어 고객으로 정의

 

  • 표현성(Expressiveness)
    • ER모델의 의미를 쉽게 이해할 수 있도록 명확하게 설계
    • ex) 주소1, 주소2 → 고객기본주소, 고객상세주소

 

  • 가독성(Readability)
    • 읽기 쉽고, 쉽게 알아차릴 수 있도록 표현
      • 위에서 아래로
      • 왼쪽에서 오른쪽으로
      • 굽은선 최소화,
      • 수직/수평선 사용
      • 관계선 교차 최소화
      • 중요한 속성은 위로
      • 연관있는 속성끼리 가까이
반응형
Comments