SQLD 학습(1-1데이터 모델링의 이해)

제우민·2022년 8월 3일
0
post-thumbnail
  1. 데이터 모델링의 이해
  • 데이터 모델의 이해

모델링의 정의

  • 복잡한 "현실세계"를 단순화시켜 표현하는 것

  • 사물 또는 사건에 관한 양상이나 관점을 연관된 사람이나 그룹을 위하여 명확하게 하는것

  • 현실 세계의 추상화된 반영

모델링의 특징

  • 추상화는 현실세계를 일정한 형식에 맞추어 표현을 한다는 의미

  • 단순화는 복잡한 현실세계를 약속된 규약에 의해 제한된 표기법이나 언어로 표현

  • 명확화는 누구나 이해하기 쉽게 하기 위해 대상에 대한 애매모호함으 제거하고 정확하게 현상을 기술

모델링의 세 가지 관점

  • 데이터 관점
    업무가 어떤 데이터와 관련이 있는지 또는 데이터간의 관계는 무엇인지에 대해서 모델링하는 방법
  • 프로세스 관점
    업무가 실제하고 있는 일은 무엇인지 또는 무엇을 해야 하는지를 모델링하는 방법
  • 상관 관점
    업무가 처리하는 일의 방법에 따라 데이터는 어떻게 영향을 받고 있는지 모델링하는 방법

데이터 모델링의 정의

  • 정보 시스템을 구축하기 위한 데이터 관점의 업무 분석 기법

  • 현실 세계의 데이터에 대해 약속된 표기법에 의해 표현되는 과정

  • 데이터베이스를 구축하기 위한 분석/설계의 과정
    데이터 모델이 제공하는 기능

  • 가시화

  • 명세화

  • 구조화된 틀

  • 문서화

  • 다양한 영역에 집중하기 위해 다른 영역의 세부 사항은 숨기는 다양한 관점 제공

  • 구체화

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

  • 파급효과: 시스템 구축 작업 중에서 다른 어떤 설계 과정보다 데이터 설계가 중요

  • 복잡한 정보 요구사항의 간결한 표현: 데이터 모델은 구축할 시스템의 정보 요구사항과 한계를 가장 명확하고 간결하게 표현할 수 있는 도구

  • 데이터 품질: 데이터의 중복, 비유연성, 비일관성이 발생할 수 있음

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

현실세계 - 개념적 구조 - 논리적 구조 - 물리구조

  • 개념적 데이터 모델링: 추상화 수준이 높고 업무 중심적이고 포괄적인 수준의 모델링진행. 전사적 데이터 모델링. EA수립시 많이 사용
  • 논리적 데이터 모델링: 시스템으로 구축하고자 하는 업무에 대해 Key,속성,관계 등을 정확하게 표현,재사용성이 높음

  • 물리적 데이터 모델링: 실제로 데이터베이스에 이식할 수 있도록 성능,저장 등 물리적인 성격을 고려하여 설계

프로젝트 생명주기에서 데이터 모델링
정보전략계획(ISP) > 분석 > 설계 > 계발 > 테스트 > 전환/이행단계

데이터 독립성의 필요성

  • 유지보수 비용증가

  • 데이터 중복성 증가

  • 데이터 복잡도 증가

  • 요구사항 대응 저하

데이터 베이스 3단계 구조

  • 외부 스키마 (사용자관점)
  • 개념 스키마 (통합 관점)
  • 내부 스키마 (물리적 관점)

데이터 모델링의 세가지요소

  • 업무가 관여하는 어떤것

  • 어떤 것이 가지는 성격

  • 업무가 관여하는 어떤 것 간의 관계

데이터 모델링 작업순서

  1. 엔터티를 그린다.

  2. 엔터티를 적절하게 배치한다.

  3. 엔터티간 관계를 설정한다.

  4. 관계명을 기술한다.

  5. 관계의 참여도를 기술한다.

  6. 관계의 필수여부를 기술한다.

좋은 데이터 모델의 요소

  • 완전성: 업무에 필요한 데이터가 모두 정의되어야함

  • 중복 배제: 동일한 사실은 한번만 저장해야함

  • 업무 규칙: 데이터 모델 분석만으로도 비즈니스 로직이 이해되어야함

  • 데이터 재사용: 데이터 통합성과 독립성 고려해야함

  • 통합성: 동일한 데이터는 유일하게 정의해서 다른 영역에서 참조해야함

profile
Work hard

0개의 댓글