🍋 ⚾️ 💻 🎬 🎮

CS/Database

[DB] 02. 데이터베이스 시스템 - 1

aeightchill 2025. 3. 12. 20:28
728x90

 

Database System

데이터베이스 시스템은 크게 다음과 같이 구성

 

  1.  사용자
  2.  데이터 언어
  3.  데이터베이스 관리 시스템
  4.  데이터베이스 

 

 


 

1.  데이터베이스 아키텍처 (Architectures of Database)

 

ANSI-SPARC 데이터베이스 아키텍처

미국 표준화 기관인 ANSI/SPARC에서 제안한 3단계 데이터베이스 구조

  • 내부 단계 (Internal Level)            :     물리적인 저장 장치의 관점
  • 개념 단계 (Conceptual Level)     :     조직 전체의 관점
  • 외부 단계 (External Level)           :     개별 사용자 관점

각 단계는 서로 다른 추상화 수준을 제공한다.

  →  내부 단계에서 외부 단계로 갈수록 추상화 수준이 높아진다.

 


 

스키마(Schema) vs. 인스턴스(Instance)

스키마(Schema)

-   데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것
-   각 단계(내부, 개념, 외부)마다 스키마가 존재
인스턴스(Instance)

-   스키마를 기반으로 데이터베이스에 실제로 저장된 값

 


 

각 단계별 특징

  1. 외부 단계 (External Level)
    • 외부 스키마(External Schema)
      • 외부 단계에서 사용자에게 필요한 데이터베이스를 정의한 것.
      • 사용자마다 다르게 보이는 데이터베이스 구조로, Sub Schema라고도 불린다.
    • 하나의 데이터베이스에 여러 개의 외부 스키마 존재 가능
  2. 개념 단계 (Conceptual Level)
    • 개념 스키마(Conceptual Schema)
      • 개념 단계에서 데이터베이스 전체의 논리적 구조를 정의한 것.
      • 조직 전체에서 바라보는 데이터베이스의 논리적 구조
      • 데이터 간 관계 및 제약 조건을 정의하며, 데이터 보안 및 접근 권한 설정을 포함한다.
    • 데이터베이스 하나에는 개념 스키마가 하나만 존재
  3. 내부 단계 (Internal Level)
    • 내부 스키마(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