데이터 모델링은 현실의 업무를 약속된 표기법으로 데이터 구조로 추상화하는 설계 활동입니다. SQLD 제1과목 「데이터 모델링의 이해」의 출발점으로, 이 단원은 암기보다 "비슷한 개념을 구분"하는 문제로 나옵니다.
이 단원, 시험에서 어디에 나오나 (출제 비중)
- 제1과목 「데이터 모델링의 이해」 = 10문항 · 20점(문항당 2점, 전체 100점 중 20%). 과목 40%(8점) 미만이면 과락입니다.
- 이 첫 단원의 이론(3단계·3층 스키마·독립성·3관점·유의점)은 그 20점 안에서 반복 노출되는 기본기입니다. (단원별 정량 출제 문항수를 공식으로 공개하진 않습니다 — 출처: KDATA 출제기준.)
출제 포인트 — 시험이 실제로 묻는 것
이 단원에서 시험이 실제로 묻는 핵심 각도는 아래 다섯입니다. 특히 ①②는 매 회차 헷갈리게 내는 단골이라, 이 글은 여기에 분량을 집중합니다.
- 모델링 3단계 vs ANSI 3층 스키마 구분 (최다 함정)
- 논리적 / 물리적 데이터 독립성의 방향
- 정규화가 "논리적" 단계 활동이라는 점 (반정규화 = 물리)
- 데이터 모델링 3관점 — 데이터(What)·프로세스(How)·상관(Interaction)
- 좋은 모델 유의점 — 중복·비유연성·비일관성의 정의 매칭
① 모델링 3단계 vs 3층 스키마 — 최다 함정
이름이 비슷해 섞어 내는 문제가 가장 많습니다. 두 개념은 완전히 다른 축입니다.
그림 1. 왼쪽 「3단계」는 설계가 진행되는 순서(시간축), 오른쪽 「3층 스키마」는 DB 구조의 계층입니다. '개념적 모델링'과 '개념 스키마'는 이름만 닮은 다른 개념입니다. (자작 도식)
모델링 3단계 (설계 진행 순서, 추상 → 구체)
| 단계 | 산출물·활동 | 특징 |
|---|---|---|
| 개념적 | 핵심 엔터티·관계(전사·업무 중심) | DBMS 독립, 추상적 |
| 논리적 | 정규화·상세 속성·식별자(키) | 재사용성↑, DBMS 독립 |
| 물리적 | 테이블·컬럼·인덱스·저장·성능 | 특정 DBMS 반영, 구체 |
ANSI 3층 스키마 (DB 구조 계층, 동시에 존재)
| 스키마 | 관점 |
|---|---|
| 외부 | 사용자·응용별 뷰(View) |
| 개념 | 조직 전체 통합 논리 구조(엔터티·관계·제약) |
| 내부 | 데이터의 물리적 저장 구조(인덱스·파일) |
핵심: 3단계 = "언제 만드나"(순서), 3층 스키마 = "어떻게 쌓이나"(구조). 보기에서
개념적↔개념,물리적↔내부를 슬쩍 바꿔치기하면 오답입니다.
② 데이터 독립성 — 방향을 거꾸로 내는 함정
3층 스키마를 나눈 목적이 곧 데이터 독립성입니다. 방향을 반대로 적은 보기가 대표 오답입니다.
그림 2. '무엇을 바꿔도 위층이 안전한가'로 외웁니다. 개념→외부 = 논리적, 내부→개념 = 물리적 독립성. (자작 도식)
- 논리적 독립성: 개념 스키마가 바뀌어도 외부 스키마(응용) 는 영향을 최소로 받음.
- 물리적 독립성: 내부 스키마(저장) 가 바뀌어도 개념 스키마 는 영향을 최소로 받음.
암기법: "저장 구조(내부)를 바꿔도 앱이 안 깨진다" → 물리적 독립성. "통합 구조(개념)를 바꿔도 각 화면(외부)이 안 깨진다" → 논리적 독립성.
③ 정규화는 "논리적" 단계 — 반정규화는 "물리적"
정규화(중복 제거)는 논리적 모델링 단계의 활동입니다. 성능을 위해 일부러 중복을 허용해 되돌리는 반정규화(비정규화)는 물리적 단계입니다. "정규화를 물리 단계에서 한다"는 보기는 오답입니다.
④ 데이터 모델링의 3가지 관점
| 관점 | 무엇을 보나 | 영문 |
|---|---|---|
| 데이터 | 업무가 다루는 데이터(엔터티·속성)의 구조 | What |
| 프로세스 | 업무가 하는 일(처리·기능) | How |
| 상관(데이터↔프로세스) | 프로세스가 데이터를 어떻게 쓰는지(CRUD) | Interaction |
데이터 모델이 제공하는 3요소는 구조(Structure)·연산(Operation)·제약(Constraint) 입니다.
⑤ 좋은 모델을 위한 유의점 — 정의 매칭에 주의
정의를 서로 바꿔 내는 매칭 문제가 나옵니다.
- 중복(Duplication): 같은 데이터를 여러 곳에 저장하지 않는다(→ 정규화).
- 비유연성(Inflexibility): 데이터 정의를 사용 프로세스와 분리해, 사소한 업무 변화에 구조가 흔들리지 않게.
- 비일관성(Inconsistency): 데이터 간 상호 연관관계를 명확히 정의해 모순된 데이터가 저장되지 않게.
한 장 정리 (암기 카드)
- 3단계(순서): 개념적(추상·DBMS독립) → 논리적(정규화) → 물리적(성능·DBMS).
- 3층 스키마(구조): 외부(뷰)·개념(통합)·내부(저장). ← 3단계와 다른 축!
- 독립성: 논리(개념→외부 안전)·물리(내부→개념 안전).
- 3관점: 데이터(What)·프로세스(How)·상관(Interaction). 3요소: 구조·연산·제약.
- 유의점: 중복·비유연성(정의↔프로세스 분리)·비일관성(연관관계 명확).
참고 출처
- 시험 과목·출제기준·배점·과락: 한국데이터산업진흥원(KDATA) 데이터자격검정 (2026년 7월 확인)
- 3층 스키마·데이터 독립성은 ANSI/SPARC 아키텍처(1975) 이론에 근거하며, 본문 설명·도식·암기법은 자작입니다.