Notice
Recent Posts
Recent Comments
Link
250x250
«   2025/02   »
1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28
Tags
more
Archives
Today
Total
관리 메뉴

거인의 코딩일지

[SQLD] 데이터 모델링의 이해 본문

자격증/SQLD

[SQLD] 데이터 모델링의 이해

코딩거인 2024. 4. 8. 23:35
728x90

데이터 모델링의 이해

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

 

모델링의 세가지 관점
  1. 데이터 관점 (What, Data)
    • 데이터 위주의 모델링
    • 어떤 데이터들이 업무와 얽혀 있는지, 그리고 그 데이터 간에 어떠한 관계가 있는지에 대하여 모델링하는 방식
  2. 프로세스 관점 (How, Process)
    • 업무가 실제로 처리하는 일은 무엇인지 혹은 앞으로 처리해야 하는 일은 무엇인지 모델링 하는 방식
  3. 데이터와 프로세스의 상관 관점 (Data VS Process, Interaction)
    • 프로세스의 흐름에 따라 데이터가 어떤 영향을 받는지를 모델링 하는 방법
데이터 품질을 보장하기 위해 데이터 모델링시 유의 해야하는 사항

1. 중복
- 같은 데이터가 여러 엔티티에 중복으로 저장되는 현상을 지양
2. 비유연성
- 데이터 모델의 설계에 따라 어플리케이션의 사소한 변경에도 데이터 모델이 수시로 변경 되어야 하는 상황이 있기에 데이터 모델과 프로세스를 분리하여 유연성을 높여야 한다.
3. 비일관성
- 데이터의 중복이 없는 경우에도 비일관성이 존재할 수 있음, 개발자가 다른데이터와의 연광성을 고려하지 않고 일부 데이터만 변경 할수 있기 때문
- 이런 위험을 예방하기 위해 데이터 모델링을 할 때 데이터의 연관관계를 명확하게 정의 해야함

 

모델링의 세가지 단계
  1. 개념적 데이터 모델링
    • 회사 전체적 데이터 모델링 수행시 행해지며 추사오하 레벨이 가장  높은 모델링
    • 이 단계에서는 업무 중심적이고 포괄적인 수준의 모델링을 해야함
  2. 논리적 데이터 모델링
    • 재사용성이 가장 높은 모델링으로 데이터 베이스 모델에 대한 Key, 속성, 관계 등을 모두 고려
  3. 물리적 데이터 모델링
    • 실제 데이터 베이스로 구현할 수 있도록 성능이나 가용성등의 물리적인 성격을 고려하여 모델링
데이터의 독립성
  • 3단계 스키마 구조
    • 외부 스키마
      • 사용자 관점 : Maltiple User's View 단계로 각 사용자가 보는 데이터베이스의 스키마를 정의
    • 개념 스키마
      • 통합된 간점
        • Communitiy View of DB 단계로 모든 사용자가 보든 데이터베이스의 스키마를 통합, 전체 데이터베이스를 나타냄,
        • 데이터베이스에 저장되는 데이터들을 표현하고 데이터들 간의 관계를 나타냄
    • 내부 스키마
      • 물리적인 관점
        • Physical Representation 단계로 물리적인 저장구조
        • 실질적인 데이터의 저장구조나 컬럼 정의, 인덱스 등이 포함됨
  • 3단계 스키마 구조가 보장하는 독립성
    • 논리적 독립성 : 개념스키마가 변경되어도 외부스키마는 영향 X
    • 물리적 독립성 : 내부스키마가 변경되어도 외부/ 개념 스키마는 영향 X

 

728x90