[SQLD]데이터 모델링

Jimin_Note·2022년 5월 18일
0

[SQLD]

목록 보기
1/2

📍모델링이란?

  1. 복잡한 현실세계를 단순화
  2. 사물, 사건에 대한 양상이나 관점을 명확화
  3. 현실 세계의 추상화

📍모델링의 세 가지 관점

  1. 데이터 관점:어떤 데이터와 관련이 있는지, 데이터 간의 관계는 무엇인지(What)
  2. 프로세스관점: 업무가 실제하고 있는 일이 무엇인지, 무엇을 해야 하는지(How)
  3. 데이터와 프로세스의 상관관점: 업무가 처리하는 일의 방법에 다라 데이터는 어떻게 영향을 받고 있는지(Interaction)

📍데이터 모델링

  • 정보시스템을 구축하기 위한 데이터관점의 업무 분석
  • 현실세계의 데이터에 대해 약속된 표기법
  • 데이터베이스를 구축하기 위한 분석/설계의 과정

📍데이터 모델이 제공하는 기능

👉 가시화, 명세화, 구조화, 문서화

📍데이터 모델링의 중요성 및 유의점

👉 중요성
1. 파급효과 : 데이터 모델의 변경이 불가피한 상황이 발생한다면 이를 위한 많은 영향 분석 발생
-> 변경을 해야하는 데이터 모델의 형태에 따라 이 시기의 데이터 구조의 변경으로 인한 일련의 변경작업은 전체 시스템 구출 프로젝트에서 큰 위험요소가 될 수 있다.
2. 간결한 표현
3. 데이터 품질

👉 유의점
1. 중복 : 데이터베이스가 여러 장소에 같은 정보를 저장하지 않도록 유의
2. 비유연성 : 데이터 모델이 수시로 변경됨으로서 유지보수의 어려움을 가중시킬 수 있기때문에 데이터의 정릐를 데이터의 사용 프로세스와 분리함으로써 중대한 변화를 일으킬 수 있는 가능성 줄여야한다.
3. 비일관성 : 중복이 없더라도 비일관성은 발생할 수 있다. 데이터 모델링을 할때 데이터와 데이터간 상호연관관계에 대한 명확한 정의로 이러한 위험 예방한다.

📍데이터 모델링의 3단계 진행


📍프로젝트 생명주기

Waterfall 기반에서는 데이터 모델링의 위치가 분석과 설계단계로 구분
분석 단계에서 업무중심의 논리적인 데이터 모델링
설계단계에서 하드웨어와 성능을 고려한 물리적인 데이터 모델링

📍데이터 독립성의 필요성

  1. 유지보수 비용 절감
  2. 데이터복잡도 감소
  3. 데이터 중복성 감소
  4. 요구사항 대응 증가
  • 각 View의 독립성을 유지하고 계층별 View에 영향을 주지 않고 변경가능
  • 단계별 Schema에 따라 데이터 정의어(DDL)와 데이터 조작어(DML)가 다름을 제공

📍데이터베이스 3단계 구조


위 표에서 외부단계는 사용자와 가장 가까운 단계

📍데이터 모델링의 이해관계자

데이터 모델 표기법

설명표기법
엔터티사각형
관계마름모
속성타원형

ERD(Entity Relationship Diagram)표기법
ERD는 각 업무분석에서 도출된 엔터티와 엔터티간의 관계를 이해하기 쉽게 도식화된 다이어그램
실제 프로젝트에서는 해당 업무에서 데이터의 흐름과 프로세스와의 연관성을 이야기하는 데 가장 중요한 표기법이자 산출물이다.

  1. 엔터티를 그린다.
  2. 엔터티를 적절하게 배치.
  3. 엔터티간 관계를 설정.
  4. 관계명을 기술.
  5. 관계의 참여도를 기술.
  6. 관계의 필수여부를 기술.

profile
Hello. I'm jimin:)

0개의 댓글