1과목 · 데이터 모델링의 이해·1장
데이터 모델링의 이해
데이터 모델링의 개념, 목적, 3대 특징, 세 가지 스키마 구조, 추상화 단계별 모델링 과정을 정리합니다.
1. 데이터 모델링이란
데이터 모델링(Data Modeling) 은 현실 세계의 업무 정보를 체계화해 데이터베이스에 저장할 수 있는 구조로 표현하는 활동입니다. 단순히 "어떤 테이블을 만들지" 결정하는 기술 작업이 아니라, 업무 요구사항을 분석하고 엔터티·속성·관계를 정의해 정보의 의미와 규칙을 명확하게 기술하는 과정입니다.
데이터 모델링의 목적
- 업무 정보의 정확한 이해 — 누가 어떤 데이터를 왜 다루는지 명확히 드러냄
- 데이터 품질 확보 — 중복·불일치·누락 방지
- 시스템 간 커뮤니케이션 도구 — 기획·개발·운영이 동일한 그림을 공유
- 향후 확장과 변경에 강한 구조 — 업무 변화에 유연하게 대응
2. 데이터 모델링의 3대 특징
| 특징 | 설명 |
|---|---|
| 추상화(Abstraction) | 현실 세계를 단순화해 필요한 정보만 남긴다 |
| 단순화(Simplification) | 복잡한 업무를 약속된 표기법으로 명확하게 표현한다 |
| 명확성(Clarity) | 누가 보아도 동일하게 해석할 수 있도록 애매함을 제거한다 |
3. 데이터 모델링 시 유의사항
- 중복(Duplication) — 같은 데이터가 여러 테이블에 존재해 불일치가 생기지 않도록 해야 한다.
- 비유연성(Inflexibility) — 요건이 조금 바뀌었을 때 스키마 전체를 뒤집어야 한다면 잘못된 모델이다.
- 비일관성(Inconsistency) — 서로 연관된 데이터가 다른 규칙으로 저장되면 품질이 무너진다.
4. 스키마의 3단계 구조 (ANSI-SPARC)
┌─────────────────┐ 외부 스키마(External)
│ View A │ View B │ 사용자/응용이 보는 관점
└─────────────────┘
▲
┌─────────────────┐ 개념 스키마(Conceptual)
│ 전체 업무 데이터 │ 조직 전체의 통합 뷰
└─────────────────┘
▲
┌─────────────────┐ 내부 스키마(Internal)
│ 물리 저장 구조 │ 파일·인덱스·블록 수준
└─────────────────┘
데이터 독립성
- 논리적 독립성: 개념 스키마가 바뀌어도 외부 스키마가 영향을 받지 않는다.
- 물리적 독립성: 내부 스키마가 바뀌어도 개념·외부 스키마가 영향을 받지 않는다.
5. 모델링의 세 단계
| 단계 | 관점 | 산출물 |
|---|---|---|
| 개념적 모델링 | 업무 관점, 추상적 | 업무 중심 ERD, 핵심 엔터티·관계 |
| 논리적 모델링 | 데이터 구조 관점, 정규화 | 정규화된 ERD, 키·속성·제약 |
| 물리적 모델링 | DBMS 구현 관점 | 테이블·컬럼·인덱스·파티션 |
실제 DB 구축에 참고되는 모델은 물리적 데이터 모델입니다.
6. 데이터 모델의 구성 요소
데이터 모델 = Things + Attributes + Relationships
"어떤 대상이 있고, 그 대상은 어떤 특성을 갖고, 대상끼리 어떻게 연결되는가"를 규정합니다.
7. 자주 출제되는 포인트
- 3대 특징: 추상화 / 단순화 / 명확성.
- 스키마 3단계: 외부 → 개념 → 내부.
- 논리 vs 물리 독립성의 대상 차이.
- 실제 DB 구축 = 물리 모델링 (개념 X).
- 데이터 모델 3요소 = Things / Attributes / Relationships.
8. 요약 체크리스트
- 데이터 모델링의 목적과 3대 특징을 설명할 수 있다.
- 외부·개념·내부 스키마의 위치와 역할을 그릴 수 있다.
- 논리·물리 독립성을 구분할 수 있다.
- 개념·논리·물리 모델링의 관점 차이를 안다.