728x90
Database System
데이터베이스 시스템은 크게 다음과 같이 구성
- 사용자
- 데이터 언어
- 데이터베이스 관리 시스템
- 데이터베이스
1. 데이터베이스 아키텍처 (Architectures of Database)
ANSI-SPARC 데이터베이스 아키텍처
미국 표준화 기관인 ANSI/SPARC에서 제안한 3단계 데이터베이스 구조
- 내부 단계 (Internal Level) : 물리적인 저장 장치의 관점
- 개념 단계 (Conceptual Level) : 조직 전체의 관점
- 외부 단계 (External Level) : 개별 사용자 관점
각 단계는 서로 다른 추상화 수준을 제공한다.
→ 내부 단계에서 외부 단계로 갈수록 추상화 수준이 높아진다.
스키마(Schema) vs. 인스턴스(Instance)
스키마(Schema)
- 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것
- 각 단계(내부, 개념, 외부)마다 스키마가 존재
인스턴스(Instance)
- 스키마를 기반으로 데이터베이스에 실제로 저장된 값
각 단계별 특징
- 외부 단계 (External Level)
- 외부 스키마(External Schema)
- 외부 단계에서 사용자에게 필요한 데이터베이스를 정의한 것.
- 사용자마다 다르게 보이는 데이터베이스 구조로, Sub Schema라고도 불린다.
- 하나의 데이터베이스에 여러 개의 외부 스키마 존재 가능
- 외부 스키마(External Schema)
- 개념 단계 (Conceptual Level)
- 개념 스키마(Conceptual Schema)
- 개념 단계에서 데이터베이스 전체의 논리적 구조를 정의한 것.
- 조직 전체에서 바라보는 데이터베이스의 논리적 구조
- 데이터 간 관계 및 제약 조건을 정의하며, 데이터 보안 및 접근 권한 설정을 포함한다.
- 데이터베이스 하나에는 개념 스키마가 하나만 존재
- 개념 스키마(Conceptual Schema)
- 내부 단계 (Internal Level)
- 내부 스키마(Internal Schema)
- 데이터가 실제로 저장되는 방법을 정의한 것.
- 데이터의 구조, 크기, 접근 경로 등 물리적 저장 구조를 포함한다.
- 데이터베이스 하나에는 내부 스키마가 하나만 존재
- 내부 스키마(Internal Schema)
데이터 종속성과 매핑 (Data Dependency and Mapping)
데이터베이스의 3단계 구조에서 각 단계는 서로 연결되어 있으며, 구조 변경 시 상위 또는 하위 단계에 영향을 주는 데이터 종속성 (Data Dependency) 문제가 발생할 수 있다.
이를 해결하기 위해 매핑(Mapping) 기법을 사용한다.
→ 각 단계 사이에 중간 인터페이스를 만들어 놓는다.
매핑(Mapping) 종류
단계별 스키마 사이의 대응 관계를 정의함으로써 데이터 독립성을 확보한다.
- External-Conceptual Mapping (응용 인터페이스)
- Conceptual-Internal Mapping (저장소 인터페이스)
데이터 독립성 (Data Independency)
하위 스키마가 변경되더라도 상위 스키마가 영향을 받지 않는 특성
- 논리적 데이터 독립성 (Logical Data Independence)
- 개념 스키마 변경 시, 외부 스키마에 영향 없음
- 관련된 External-Conceptual Mapping만 수정하면 됨
- 물리적 데이터 독립성 (Physical Data Independence)
- 내부 스키마 변경 시, 개념 스키마에 영향 없음
- 관련된 Conceptual-Internal Mapping만 수정하면 됨
728x90
'CS > Database' 카테고리의 다른 글
[DB] 03. 데이터 모델링 (Data Modeling) - (2) 요구 사항 분석 (0) | 2025.03.14 |
---|---|
[DB] 03. 데이터 모델링 (Data Modeling) - (1) 데이터 모델 (0) | 2025.03.14 |
[DB] 02. 데이터베이스 시스템 - 2 (0) | 2025.03.12 |
[DB] 01. 데이터베이스를 왜 사용할까? (0) | 2025.03.12 |
[DB] 00. 데이터베이스(Database)란? (0) | 2025.03.12 |