1. 데이터 모델링의 이해

JeongPark·2023년 3월 4일
0

Database

목록 보기
5/5

모델링이란?

데이터베이스의 모델링은 ' 현실 세계를 단순화하여 표현하는 기법 '이다.

모델링의 특징

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

모델링의 세 가지 관점

  1. 데이터의 관점(What,Data)
  2. 프로세스 관점(How,Process)
  3. 데이터와 프로세스의 상관 괌점(Data vs.Process, Interaction)

모델링의 세 가지 단계

  1. 개념적 데이터 모델링(Conceptual Data Modeling)
    : 업무중심적이고 포괄적인 수준의 모델링 진행
  2. 논리적 데이터 모델링(Logical Data Modeling)
    : 재사용성이 가장 높은 모델링
  3. 물리적 데이터 모델링(Physical Data Modeling)
    : 실제 DB에서 구현할 수 있도록 성능이나 가용성 등의 물리적인 성격을 고려하여 모델을 표현하는 단계

데이터의 독립성

  • ANSI-SPARC(American National Standards Institute, Standards Planning and Requirements Committee) 아키텍처는 1975년에 제안된 데이터베이스 관리 시스템(DBMS)의 추상적인 설계 표준이다.
    • 목적 : 데이터베이스에 대한 사용자들의 관점과 데이터베이스가 실제로 표현되는 물리적인 방식을 분리하기 위한 것임.

3단계 스키마 구조

  • 외부 스키마(External Schema) : 사용자의 관점
  • 개념 스키마(Conceptual Schema) : 통합된 관점
  • 내부 스키마(internal Schema) : 물리적인 관점

3단계 스키마 구조가 보장하는 독립성

  1. 논리적 독립성 : 개념 스키마가 변경되어도 외부 스키마는 영향받지 않는다.
  2. 물리적 독립성 : 내부 스키마가 변경되어도 외부/개념 스키마는 영향받지 않는다.

ERD(Entity Relationship Diagram)

시스템에 어떤 엔터티들이 존재하며 그들 간에 어떤 관계가 있는지를 나타내는 다이어그램임.

ERD 표기 방식

  1. Peter Chen
  2. IDEF1X(Integration Definition for Information Modeling)
  3. IE/Crow's Foot
  4. Min-Max/ISO
  5. UML
  6. Case Method/Barker

엔터티(Entity)

엔티티란?

식별이 가능한 객체라는 의미를 가지고 있음.

특징

  1. 업무에서 쓰이는 정보여야 함.
  2. 유니크함을 보장할 수 있는 식별자가 있어야 함.
  3. 2개 이상의 인스턴스를 가져야 함.
  4. 반드시 속성을 가지고 있어야 함.
  5. 다른 엔터티와 1개 이상의 관계를 가지고 있어야 함.

분류

유형 vs. 무형

  • 유형, 개념, 사건 엔터티

발생시점

  • 기본, 중심, 행위 엔터티

속성(Attribute)

속성이란?

엔터티의 특징을 나타내는 최소의 데이터 단위
의미상 더 이상 쪼개지지 않는 레벨이어야 하며 프로세스에 필요한 항목

속성값

속성값은 엔터티에 속한 하나의 인스턴스를 구체적으로 나타내주는 데이터

Q. 그러면 여러개의 속성값을 가질 수 있나요?
A. 예, 그런 경우 별도의 엔터티로 분리해줘야 합니다.

엔터티, 인스턴스, 속성, 속성값의 관계

: 엔터티 ⊃ 인스턴스 ⊃ 속성

분류

  • 특성에 따른 분류 : 기본속성, 설계속성, 파생속성
  • 구성방식에 따른 분류 : PK, FK, 일반속성

도메인(Domain)

속성이 가질 수 있는 속성값의 범위
ex) 우편번호

관계(Relationship)

관계란?

엔터티와 엔터티와의 관계를 의미

존재 관계

존재 자체로 연관성이 있는 관계를 의미

행위 관계

특정한 행위를 함으로써 생기는 관계를 의미

표기법

  • 관계명(Membership) : 관계의 이름
  • 관계차수(Cardinality) : 관계에 참여하는 수
  • 관계선택사양(Optionality) : 필수인지 선택인지의 여부

식별자(Identifiers)

식별자란?

모든 엔터티는 인스턴스를 가지고 있고 인스턴스 속성으로 자신의 특성을 나타내며, 이런 속성 중에 각각의 인스턴스를 구분 가능하게 만들어주는 대표 격인 속성을 의미

주식별자

기본키, PK(Primary Key) 여러개의 속성
한개의 속성 모두 주식별자가 될 수 있음

  • 유일성 : 유니크함
  • 최소성 : 유일성 보장하는 최소 개수의 속성
  • 불변성 : 속성값이 되도록 변하지 x
  • 존재성 : NULL이 되면 x

분류

  1. 대표성 여부
  • 주식별자
  • 보조식별자
  1. 스스로 생성되었는지 여부
  • 내부식별자
  • 외부식별자
  1. 단일 속성의 여부
  • 단일식별자
  • 복합식별자
  1. 대체 여부
  • 원조식별자

  • 대리식별자

    식별자 관계 와 비식별자 관계

  1. 식별자 관계 : 부모 엔터티의 식별자가 자식 엔터티의 주식별자가 되는 관계 , 실선으로 표현.
  2. 비식별자 관계 : 부모 엔터티의 식별자가 자식 엔터티의 일반 속성이 되는 관계, 점선으로 표현.
profile
無汗不成(무한불성) : 땀을 흘리지 않고는 이룰 수 없다.

0개의 댓글