3단계 스키마와 데이터 독립성
쉽게 말하면
같은 데이터도 보는 사람에 따라 모습이 달라요. 사용자는 자기 화면에 필요한 부분만 보고(외부), 관리자는 전체 구조를 보고(개념), 컴퓨터는 디스크에 실제로 어떻게 저장됐는지를 봐요(내부). 이렇게 층을 나눠 두면 저장 방식을 바꿔도 사용자 화면은 그대로 둘 수 있어요. 이걸 데이터 독립성이라고 불러요.
시험용 정의
3단계 스키마는 ANSI/SPARC가 제안한 데이터베이스 구조로, 같은 데이터를 외부 스키마(사용자 관점), 개념 스키마(전체 통합 관점), 내부 스키마(물리 저장 관점) 세 층으로 나눠 본다. 층을 나눈 목적은 데이터 독립성, 즉 한 층을 바꿔도 다른 층이 영향을 받지 않게 하는 것이다.
비유로 이해하기
은행으로 보면 고객 앱 화면(외부), 은행 전체 장부 구조(개념), 금고와 서버실에 실제로 보관하는 방식(내부)이다. 금고 위치를 옮겨도 장부 구조는 그대로고, 장부에 항목을 추가해도 고객 앱 화면은 그대로일 수 있다.
자세히
그림으로 보기: 3단계 스키마
- 외부 스키마사용자·응용 프로그램이 보는 여러 관점(뷰)
- 개념 스키마조직 전체의 데이터 구조, 하나뿐
- 내부 스키마실제 저장 구조(파일·인덱스)
먼저 알아 둘 말
| 말 | 뜻 |
|---|---|
| 스키마(schema) | 데이터베이스의 구조와 제약을 적은 설계 명세. 어떤 테이블에 어떤 열이 있고 무엇을 지켜야 하는지 |
| ANSI/SPARC | 미국 표준 협회(ANSI) 산하 위원회. 1970년대에 3단계 데이터베이스 구조를 제안했다 |
| 독립성 | 한쪽을 바꿔도 다른 쪽을 고칠 필요가 없는 성질 |
| 사상(매핑) | 두 층을 서로 연결해 주는 대응 규칙. 한 층이 바뀌면 사상만 고쳐서 다른 층을 지킨다 |
세 스키마
| 스키마 | 관점 | 특징 |
|---|---|---|
| 외부 스키마 | 사용자·응용 프로그램 | 사용자마다 필요한 부분만 본다. 여러 개 있을 수 있다 (서브 스키마) |
| 개념 스키마 | 조직 전체(통합) | 모든 사용자가 보는 데이터를 통합한 전체 구조. 데이터베이스당 하나. 엔터티·관계·제약조건을 담는다 |
| 내부 스키마 | 물리 저장 장치 | 데이터가 디스크에 실제로 어떻게 저장되는지(레코드 구조, 인덱스, 접근 경로) |
두 가지 독립성
| 독립성 | 무엇이 바뀌어도 | 무엇이 그대로 | 연결 사상 |
|---|---|---|---|
| 논리적 독립성 | 개념 스키마 (테이블 추가, 구조 변경) | 외부 스키마와 응용 프로그램 | 외부/개념 사상 |
| 물리적 독립성 | 내부 스키마 (저장 장치, 인덱스 구조) | 개념 스키마 | 개념/내부 사상 |
시험에 이렇게 나와요
- 외부(사용자 관점, 여러 개)·개념(통합 관점, 하나)·내부(물리 저장) 스키마 구분
- 논리적 독립성 = 개념 스키마 변경이 외부 스키마에 영향 없음
- 물리적 독립성 = 내부 스키마 변경이 개념 스키마에 영향 없음
- 모델링 3단계(개념·논리·물리)와 이름이 비슷해 헷갈리게 내는 문제
출제 범위·공식 안내 기반
확인 문제
Q1. 디스크 저장 방식(인덱스 구조, 파일 배치)을 바꿔도 전체 테이블 구조와 응용 프로그램은 그대로 쓸 수 있다. 이 성질은?
- 무결성
- 물리적 독립성
- 일관성
- 논리적 독립성
정답 보기
2번 물리적 독립성
저장 구조(내부 스키마)가 바뀌어도 전체 구조(개념 스키마)가 영향을 받지 않는 것을 물리적 독립성이라고 한다.
Q2. 모든 사용자 관점을 통합한 조직 전체의 데이터베이스 구조를 나타내는 스키마는?
- 외부 스키마
- 개념 스키마
- 내부 스키마
- 서브 스키마
정답 보기
2번 개념 스키마
개념 스키마는 전체 데이터를 통합해 표현하며 데이터베이스마다 하나다. 서브 스키마는 외부 스키마의 다른 이름이다.
Q3. 새 테이블을 추가하는 등 개념 스키마가 바뀌어도 기존 응용 프로그램을 고칠 필요가 없는 성질은?
- 물리적 독립성
- 동시성
- 논리적 독립성
- 회복성
정답 보기
3번 논리적 독립성
개념 스키마의 변경이 외부 스키마(응용 프로그램)에 영향을 주지 않는 것이 논리적 독립성이다.
Q4. 3단계 스키마에 대한 설명으로 틀린 것은?
- 목적은 데이터 독립성 확보다
- 외부 스키마는 여러 개 존재할 수 있다
- 내부 스키마는 물리적 저장 구조를 다룬다
- 개념 스키마는 사용자마다 하나씩 있다
정답 보기
4번 개념 스키마는 사용자마다 하나씩 있다
사용자마다 있는 것은 외부 스키마다. 개념 스키마는 데이터베이스 전체에 하나다.
Q5. 사용자마다 다르게 보는 관점을 나타내며 여러 개일 수 있는 스키마는?
- 개념 스키마
- 물리 스키마
- 외부 스키마
- 내부 스키마
정답 보기
3번 외부 스키마
개념 스키마는 하나, 외부 스키마는 사용자마다 여러 개.
Q6. 저장 방식이나 인덱스 구조를 바꿔도 개념 스키마가 영향받지 않는 성질은?
- 무결성
- 물리적 독립성
- 일관성
- 논리적 독립성
정답 보기
2번 물리적 독립성
내부 스키마 변경이 개념 스키마에 번지지 않는 것이 물리적 독립성이다.
헷갈리기 쉬운 O·X
물리적 독립성은 내부 스키마가 바뀌어도 외부 스키마만 보호된다는 뜻이다.
정답 보기
X 물리적 독립성은 내부 스키마 변경이 개념 스키마에 영향을 주지 않는다는 뜻이다. 개념 스키마가 그대로이니 외부도 자연히 안전하다.
외부 스키마는 사용자나 응용 프로그램이 보는 데이터베이스의 일부분이다.
정답 보기
O 사용자 관점의 부분 집합이라 사용자마다 다를 수 있다.
3단계 스키마의 개념 스키마와 데이터 모델링의 개념적 모델링은 같은 것이다.
정답 보기
X 이름만 비슷하다. 하나는 DB 구조의 층, 하나는 설계 단계다.