본문 바로가기
Data Modeling

데이터 모델링의 단계에 대해 간략히 알아보자

by BenKangKang 2021. 4. 4.

 

단계

데이터 모델링의 단계이다. 데이터 모델링은 데이터 중심 접근 방법(data-driven approach)을 사용한다.

 

 

 

 

 

- 개념적 설계부터 물리적 단계를 모델링이라고한다.

- 개념적, 논리적 설계 모두 데이터 모델이 필요하지만, 보통 논리적 설계의 데이터 모델을 데이터 모델이라고 부른다.

 

1. 개념적 설계 (Conceptual Design)

  • 현실 세계에서 처리해야 할 데이터가 무엇인지 생각한다.
  • 사람이 이해할 수 있는 형태이다.
  • DBMS 상관없이 설계한다.
    • 개념 모델링까지는 DBMS 는 정해지지 않는다.
  • 업무에 관련된 개념적 구조를 정한다.
    • 수강 정보가 있어야 한다.
  • 주의 할 것은 데이터베이스 추상화 3-layer 의 개념적 단계와, 모델링 단계의 개념적 설계는 완전 다르다.
  • 트랜잭션 모델링

2. 논리적 설계 (Logical Design)

  • 내가 사용하는 DBMS(Oracle 20, Mysql sever) 맞춰서 스키마 도출
    • 타겟 DBMS가 정해진다 -> 관계형 DB 를 사용하겠다
  • 표현력에 중점
  • 주어진 (논리적) 데이터 모델에 최적화
  • 트랜잭션 인터페이스 설계

3. 물리적 설계 (Physical Design)

  • 저장 장치에서의 데이터 표현
  • 주어진 물리적 환경에 최적화
    • 인덱스 여부
    • 분산 처리 여부
    • 더 빠른 컴퓨팅 파워를 쓸 것인지
    • 기계용량, 사용자 수, 사용패턴, 분산환경, 성능 요건
  • 트랜잭션 세부 설계

논리적 설계와 물리적 설계의 차이점은?

물리적 설계는 efficent, 논리적 설계는 effective 

즉 논리적 설계는 데이터 모델링을 유효하게 설계하는 단계이며, 물리적은 성능을 능률적으로 설계하는 단계이다.

 

고려사항

  1. 무결성(integrity)
    • 데이터의 정확성과 일관성을 유지하고 보증하는 것을 가리킨다.
    • 데이터베이스나 RDBMS 시스템의 중요한 기능이다.
  2. 일관성(consistency)
  3. 회복(recorvery)
    1. 에러가 잘 안나도록
    2. 장애 복구
  4. 보안(Security)
  5. 효율성(efficiency)
    • 응답 시간 (Throughput)
    • 저장 공간 (Space)
  6. 확장성(Flexibility) or 성장(Growth)
    1. 응용과 데이터의 확대

 

slidesplayer.org/slide/14681083/

좋은 데이터 모델링이란?

  • 완정성(completeness)
    • 우리가 필요한 정보 요소들이 다 뽑히고 잘 규정되어 있는가
  • 비중복성
    • 말 그대로 데이터 파편화가 얼마나 적는가
  • 데이터 재사용성 (data reusability)
  • 안전성과 유연성
    • 확장성이 뛰어날수록, 안전할 수 있음.
    • 확장할 수 있다는 것은 구조가 안정화 되어있다는 것이며, break change 발생
  • 우아함(Elegance)
    • 표현을 쉽도록
    • 군더더기 없이, 간결하게, 우아하게, 일관되게, 쉽게
    • Simple, Summarlized,
  • 의사전달성 (Communication)
    • 다양한 이해관계자, 관련자들이 볼때 정확히 의사소통이 될 수 있는 상태가 되어야 한다.
  • 통합성
    • 전사적인 측면에서 일관되게 표현되느냐
  • 위 요소돌의 적절한 조화
    • 균형있게 조화롭게
  • 업무 분석 (enforcement of business rules)
    • 우리 업무들을 잘 규정했는가?

 

댓글