Skip to content

Latest commit

 

History

History
71 lines (56 loc) · 3.65 KB

데이터 모델의 이해.md

File metadata and controls

71 lines (56 loc) · 3.65 KB

1. 데이터 모델의 이해


모델링이란?

  • 데이터베이스의 모델링은 현실 세계를 단순화하여 표현하는 기법이다
  • 현실 세계에서 일어날 수 있는 다양한 현상에 대해서 일정한 표기법에 의해 표현해 놓은 모형
  • 모델링이 갖춰야 할 조건
    • 현실세계를 반영해야 한다
    • 단순화하여 표현해야 한다
    • 관리하고자 하는 데이터를 모델로 설계한다

모델링의 특징

  • 추상화(Abstraction)
    • 현실 세계를 일정한 형식으로 표현하는 것, 즉 아이디어나 개념을 간략하게 표현하는 과정
  • 단순화(Simplification)
    • 복잡한 현실 세계를 정해진 표기법으로 단순하고 쉽게 표현한다는 의미
  • 명확화(Clarity)
    • 불분명함을 제거하고 명확하게 해석할 수 있도록 기술한다는 의미
  • 데이터베이스의 모델링은 현실세계를 추상화, 단순화, 명확화 하기 위해 일정한 표기법으로 표현하는 기법

모델링의 세 가지 관점

  • 데이터 관점(What, Data)
    • 어떤 데이터들이 업무와 얽혀있는지, 데이터 간에 어떤 관계가 있는지에 대해 모델링
  • 프로세스 관점(How, Process)
    • 이 업무가 실제 처리하고 있는 일이 무엇인지, 앞으로 처리해야할 일이 무엇인지 모델링
  • 데이터와 프로세스의 상관관점(Data vs Process, Interaction)
    • 데이터와 프로세스의 관계를 위주로 모델링, 프로세스의 흐름에 따라 데이터가 어떤 영향을 받는지를 모델링

모델링의 세 가지 단계

  • 개념적 데이터 모델링
    • 추상화 레벨이 가장 높은 모델링
    • 업무 중심적이고 포괄적인 수준의 모델링
    • 전사적 데이터 모델링
  • 논리적 데이터 모델링
    • 재사용성이 높은 모델링
    • 데이터베이스 모델에 대한 Key, 속성, 관계 등을 모두 표현
  • 물리적 데이터 모델링
    • 실제 데이터베이스로 구현할 수 있도록 성능이나 가용성등의 물리적 성격을 고려하여 모델을 표현하는 단계

데이터의 독립성

  • ANSI-SPARC 아키텍처 : 1975년에 제안된 DBMS의 추상적인 설계 표준
  • 위 아키텍처에서는 스키마를 3단계 구조로 나눔
  • 나누는 이유는 데이터베이스에 대한 사용자들의 관점과 데이터베이스가 실제로 표현되는 물리적인 방식을 분리하기 위함
  • 3단계 스키마 구조
    • 외부 스키마 : 각 사용자가 보는 데이터베이스의 스키마를 정의
    • 개념 스키마 : 모든 사용자가 보는 데이터베이스의 스키마를 통합하여 전체 데이터베이스를 나타냄, 데이터베이스에 저장되는 데이터들을 표현하고 데이터간의 관계를 나타냄
    • 내부 스키마 : 물리적인 저장 구조를 나타냄, 실질적인 데이터의 저장 구조나 컬럼정의, 인덱스를 포함
  • 3단계 스키마 구조가 보장하는 독립성
    • 논리적 독립성 : 개념 스키마가 변경되어도 외부 스키마는 영향이 없음
    • 물리적 독립성 : 내부 스키마가 변경되어도 외부/내부 스키마는 영향이 없음

ERD(Entity Relationship Diagram)

  • ERD 표기방식

    • IE/Crow’s Foot : 까마귀발 표기법으로 가장 많이 사용
    • Case*Method/barker : Oracle에서 사용되는 모델로 까마귀발 표기법과 비슷
  • ERD 작성 순서

    • 엔터티를 도출, 그림
    • 엔터티를 적절히 배치
    • 엔터티 간의 관계 설정
    • 관계명 기입
    • 관계의 참여도 기입
    • 관계의 필수/선택 여부 기입