데이터베이스 9주차 - 데이터 모델링
데이터 모델은 크게 개념적 데이터 모델과 논리적 데이터 모델로 나눌 수 있다.
그 중 개념적 데이터 모델은 개체-관계 모델, 개체-관계 다이어그램으로 나누는데 개체는 entity이고, 관계는 relation으로 표현한다. 추가로 개체가 지닌 속성(attribute)까지 포함하여 개념적 데이터 모델을 만들 수 있다.
데이터 모델링(data modeling)은 현실세계에 존재하는 데이터를 데이터베이스로 옮기는 변환 과정이라고 생각하며 쉽다.
데이터 모델링 과정은 아래와 같은 순서로 이루어진다.
1. 요구사항 수집 및 분석
- 사용자 식별, 데이터베이스 용도 파악, 요구사항 수집 및 명세
2. 설계
a. 개념적 모델링
- 핵심 Entity(독립개체) 도출
- ERD(Entity-Relation Diagram) 작성
-> 개체를 추출하여 관계를 정의하고 ER다이어그램까지 완성필요
b. 논리적 모델링
- ERD-RDB 모델 사상
- 개념적 모델링과정에서 하지않았던 상세속성 정의, 정규화, 데이터 표준화
-> 개념적 모델링 과정에서 도출한 ER다어이그램을 사용하려는 DBMS에 맞게 사상(Mapping)하여 실제로 구현하기 위한 모델을 만드는 과정
c. 물리적 모델링
- DB 개체 정의
- 테이블 및 인덱스 설계
-> 실제 컴퓨터의 저장장치에 저장하기 위한 물리적 구조 정의 및 구현 과정
3. 데이터베이스 구현
위 과정을 한눈에 보면 아래와 같다.
ER모델이란??
- 개체와 개체 간의 관계를 이용해 현실 세계를 개념적 구조로 표현
- 핵심요소: 개체, 속성, 관계
개체는 특성을 나타내는 속성에 의해 식별됨
ER다이어그램이란??
- ER모델을 이용해 현실 세계를 개념적으로 모델링한 결과물을 그림으로 표현한 것
- ER모델은 개념적 모델링 단계에서 사용하는 개념으로 특정 데이터 모델이나 DBMS와 무관하게 사용 가능