[SQLD] 데이터 모델링

yjkim97·2023년 8월 5일

자격증

목록 보기
4/24
post-thumbnail

현실세계 반영 단순화 표현 데이터를 설계 업무분석 및 형상화

  • 현실세계를 일정한 형식에 맞추어 표현하는 추상화의 의미를 가진다.
  • 시스템 구현을 표함한 업무분석 및 업무형상화를 하기위한 목적을 지닌다.
  • 복잡한 현실을 제한된 언어나 표기법을 통해 이해하기 쉽게 단순화하는 의미를 가진다.
  • 애매모호함을 배제하고 누구나 이해 가능하도록 정확하게 현상을 기술하는 적확하의 의미를 가진다.
  • 데이터 모델링 자체로써 업무를 설명하고 분석한다.

모델링 특징

1) 추상화 (Abstraction)

  • 아이디어 or 개념을 간략하게 표한하는 과정
  • 현실 세계를 일정한 형식으로 표현하는 것

2) 단순화 (Simplification)

  • 복잡한 현실을 단순하게 표현하는 것

3) 명확화 (Clarity)

  • 데이터를 표현시 명확하게 기술하는 것

데이터 모델링이란?
현실세계 -> [일정한 형식으로 단순하게, 명확하게] -> 모델로 표현

위 내용 처럼 데이터 모델링은 추상적으로 단순하고 명확하게 표현하는 것이 목적이다. 이에 따라 3가지 지양 포인트가 있다.

데이터 모델링을 할 때 지양해야할 점 (유의점)

  1. 중복 (Duplication)
    • 같은 데이터가 중복으로 저장되는 현상
  2. 비유연성 (Inflecibility)
    • 어플리케이션의 사소한 변경에도 데이터 모델이 수시로 변경되는 현상
    • ▶️ 데이터의 정의를 사용 프로세스와 분리해야한다.
  3. 비일관성 (Inconsistency)
    • 데이터 중복이 없어도 발생한다.
    • 데이터 간의 연관 관계가 명확하지 않아 개발자가 다른 데이터와의 연관성을 고려하지 않고 일부 데이터만 변경하는 현상

3가지 관점

1) 데이터 관점 (What, Data)

  • 데이터 위주의 모델링
  • 어떤 데이터가 업무에 얽혀있는지, 이 데이터간의 관계는 어떻게 되는지에 대해서 모델링하는 방법

2) 프로세스 관점 (How, Process)

  • 프로세스 위주의 모델링
  • 업무가 실제로 처리하는 일이 무엇인지에 대해서 모델링하는 방법

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

  • 데이터와 프로세스의 관계 위주의 모델링
  • 프로세스 흐름에 따라 데이터에 어떤 영향을 받는지 모델링하는 방법

3가지 단계

1) 개념적 데이터 모델링 (Conceptual Data Modeling)

  • 가장 추상적, 포괄적, 업무 중심적
  • 전사적 데이터 모델링이나 EA수립시 많이 사용

2) 논리적 데이터 모델링 (Logical Data Modeling)

  • 재사용성이 가장 높음, 논리표현 (key, 속성, 관계)

3) 물리적 데이터 모델링 (Physical Data Modeling)

  • 실제 DB 구현을 위한 모델링
  • 성능, 가용성 등의 물리적인 성격을 고려

데이터 모델링하는 단계
개념적 > 논리적 > 물리적


Reference
profile
어제는 🐸두꺼비 오늘은 😄YJ

0개의 댓글