데이터 모델

데이터 모델은 현실 세계의 정보를 컴퓨터 세계로 표현하기 위한 개념적인 도구이다.

데이터베이스에 데이터가 어떻게 구조화되고, 어떤 연산이 가능하며, 어떤 제약조건을 따라야 하는지를 명시한다.

데이터 모델의 3가지 구성 요소

구분핵심 개념설명
구조데이터의 논리적 구조데이터베이스에 표현될 객체 타입, 데이터 타입, 객체들 간의 관계를 정의
연산데이터 처리 방법데이터를 조작하고 검색하는 방법에 대한 명세
제약조건데이터의 유효성데이터베이스가 유지해야 할 유효하고 일관성 있는 데이터에 대한 논리적인 제약사항

데이터베이스 설계 4단계

단계핵심 활동주요 산출물
요구사항 분석사용자의 요구사항 수집 및 분석요구사항 명세서
개념적 설계현실 세계의 추상적 모델링개념적 스키마, E-R 다이어그램
논리적 설계DBMS에 맞는 논리적 모델로 변환논리적 스키마, 테이블 명세서
물리적 설계실제 저장장치에 맞는 물리적 구조 설계물리적 스키마, 테이블 정의서

1단계 : 요구사항 분석 (Requirements Analysis)

  • 핵심 활동 : 사용자의 요구사항을 수집하고 분석하여 명세서 작성
  • 설명 : 데이터베이스를 사용할 사람들의 요구사항을 파악하고, 어떤 데이터를 저장하고 어떻게 활용할지를 결정
  • 산출물 : 요구사항 명세서

2단계 : 개념적 설계 (Conceptual Design)

  • 핵심 활동 : 현실 세계를 추상적인 개념 모델로 표현
  • 설명 : 특정 DBMS에 종속되지 않는, 시스템의 핵심 개체(Entity)와 그들 간의 관계(Relationship)를 정의
  • 산출물 : 개념적 스키마, E-R 다이어그램

3단계 : 논리적 설계 (Logical Design)

  • 핵심 활동 : 개념적 모델을 특정 DBMS가 지원하는 논리적 모델로 변환
  • 설명 : 개념적 설계 단계에서 만든 E-R 다이어그램을 실제 데이터베이스 모델에 맞춰 테이블(릴레이션) 스키마로 변환
  • 산출물 : 논리적 스키마, 테이블 명세서, 논리적 데이터 모델 명세서

4단계 : 물리적 설계 (Physical Design)

  • 핵심 활동 : 논리적 모델을 실제 저장장치에 저장하기 위한 물리적 구조 정의
  • 설명 : 데이터베이스의 성능, 저장 공간 효율성 등을 고려하여 파일 구조, 인덱스, 접근 경로 등을 결정
  • 산출물 : 물리적 스키마, 테이블 정의서, 인덱스 정의서