본문 바로가기

컴퓨터 공학/데이터베이스

데이터 모델링의 이해

1. 모델링

  • 현실 세계를 단순화하여 표현하는 것
  • 특징
    • 추상화 : 일정한 형식에 맞춰 표현
    • 단순화 : 제한된 표기법이나 언어로 표현
    • 명확성 : 이해하기 쉽게 표현
  • 관점
    • 데이터 관점 : 업무와 데이터 사이의 관계
    • 프로세스 관점 : 진행되고 있거나 진행되어야 하는 업무
    • 상관 관점 : 데이터에 대한 업무 처리 방식의 영향

2. 데이터 모델링

  • 정보 시스템 구축을 위한 데이터 관점의 업무 분석 기법
  • 목적
    • 정보 표기법을 통일하여 업무 내용 분석 정확도 증대
    • 데이터 모델을 기초로 DB 생성
  • 기능
    • 가시화, 명세화, 구조화된 데이터 틀 제공
    • 문서화
    • 다양한 관점 제공
    • 구체화
  • 중요성
    • 파급효과 leverage
    • 간결한 표현 conciseness : 정보 요구사항과 한계를 간결하게 표현하는 도구
    • 데이터 품직 향상
      • 유일성 : 데이터 중복 방지
      • 유연성 : 데이터 정의 - 사용 프로세스 분리
      • 일관성
  • 이해 관계자 : 개발자, DBA, 모델러, 현업업무전문가 - 모두 모델을 정확히 해석할 수 있어야 함
  • 좋은 모델링의 요건
    • 완전성
    • 중복 배제
    • 업무 규칙
    • 데이터 재사용
    • 의사소통
    • 통합성

3. 데이터 모델링 3단계

  • 프로젝트 생명주기 :
    • 계획, 분석 단계에 개념적 모델링
    • 분석 단계에 논리적 모델링
    • 설계 단계에 물리적 모델링
  • 계획 > 분석 > 설계 > 개발 > 테스트 > 전환/이행
  1. 개념적 모델링
    • 엔티티, 속성 도출
    • ERD 작성
    • 업무 중식적, 포괄적 수준의 모델링
  2. 논리적 모델링
    • 식별자, 속성, 관계 정의
    • 정규화 → 모델의 독립성, 재사용성 확보
    • 결과 → 모델링 완료 상태
  3. 물리적 모델링
    • DB 구축
    • 성능 및 보안 등 시스템의 물리적 성격 고려

4. DB의 3단계 구조

  • 목표 : 데이터 독립성 확보
  • 3-level schema
    1. 외부 스키마
      • 각 사용자 단의 개인적 db 스키마
      • 사용자 관점
      • 응용 프로그램이 접근하는 DB를 의미함
    2. 개념 스키마
      • 조직 전체의 통합된 DB 스키마
      • 설계자 관점
      • 데이터 모델링의 지향점
    3. 내부 스키마
      • 물리적으로 데이터가 저장되는 방법을 표시하는 스키마
      • 개발자 관점
      • 물리적 저장 구조