데이터 모델
데이터 모델은 현실 세계의 정보를 컴퓨터 세계로 표현하기 위한 개념적인 도구이다.
데이터베이스에 데이터가 어떻게 구조화되고, 어떤 연산이 가능하며, 어떤 제약조건을 따라야 하는지를 명시한다.
데이터 모델의 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)
- 핵심 활동 : 논리적 모델을 실제 저장장치에 저장하기 위한 물리적 구조 정의
- 설명 : 데이터베이스의 성능, 저장 공간 효율성 등을 고려하여 파일 구조, 인덱스, 접근 경로 등을 결정
- 산출물 : 물리적 스키마, 테이블 정의서, 인덱스 정의서