3단계 데이터베이스 구조에서 스키마 간의 사상(Mapping)
1. 3단계 스키마 구조 정의
3단계 스키마는 데이터베이스를 세 개의 서로 다른 추상화 레벨로 나누어 관리하는 구조이다.
각 계층 간에는 사상(Mapping)이 정의되어 질의·갱신 시 스키마 간 변환을 수행한다.

외부 스키마:
- 개별 사용자의 관점에서 보는 데이터베이스의 논리적 구조.
- 여러 개의 외부 스키마가 존재할 수 있으며, 사용자는 자신의 외부 스키마를 통해 데이터에 접근.
개념 스키마:
- 조직 전체의 관점에서 보는 데이터베이스의 논리적 구조.
- 모든 사용자들의 요구를 통합한 데이터 모델로, 데이터의 논리적 관계와 제약 조건 등 정의.
내부 스키마:
- 물리적 저장 장치에 데이터가 실제로 저장되는 방식 정의.
- 데이터의 물리적 구조, 저장 방식, 인덱스 등 기술.
2. 스키마 간 사상 종류와 역할
외부-개념 사상 (E-C Mapping)
- 사용자가 요청한 데이터가 개념 스키마의 어느 부분에 해당하는지를 정의.
- 개념 스키마가 변경되어도 외부 스키마에 영향을 주지 않도록 조정.
-> 논리적 데이터 독립성 - 예를 들어, 사용자가 "학생의 학번과 이름"만 보길 원할 때, 이 사상을 통해 개념 스키마에 정의된 "학생 테이블"에서 학번과 이름 필드만 매핑하여 사용자에게 보여줌.
개념-내부 사상 (C-I Mapping)
- 개념 스키마에 정의된 데이터가 물리적으로 어떻게 저장되는지를 정의.
- 내부 스키마(물리적 저장 구조)가 변경되어도 개념 스키마에 영향을 주지 않도록 조정.
-> 물리적 데이터 독립성 - 예를 들어, 개념 스키마의 "학생 테이블"이 내부 스키마에서 특정 파일에 저장되고, 인덱스가 어떻게 설정되는지를 매핑합니다.
3. 유의점
- 사상 정의의 일관성: 스키마 간 제약조건(키/참조무결성/체크)이 모순 없이 전파되어야 한다.
- 성능 vs 독립성 트레이드오프: 과도한 뷰 중첩(E–C)이나 복잡한 조인은 성능 저하 → 물리 설계(C–I) 튜닝으로 보완.
- 보안·컴플라이언스: E–C 사상 계층에서 접근통제·마스킹·감사를 체계화.
- 메타데이터 거버넌스: 사상 정의 변경은 카탈로그 버전 관리와 함께 테스트/릴리스 절차 필요.
4. 결론
- 3단계 스키마와 E–C, C–I 사상은 응용·논리·물리 계층을 분리하여 논리적/물리적 데이터 독립성을 실현한다.
- 이는 변경 내성, 유지보수성, 보안, 성능 튜닝의 유연성을 동시에 확보하는 DB 설계의 핵심 원리다.