정보처리기사/데이터베이스 활용

3단 스키마 (Three-Schema Architecture)

glorypang 2025. 10. 14. 15:48
728x90
반응형
SMALL

스키마 = 데이터베이스의 구조(정의)와 제약조건을 표현한 것

1) 외부 스키마 (External Schema)

  • 사용자 관점의 스키마
  • 특정 사용자나 응용 프로그램이 바라보는 부분적 구조
  • 여러 개 존재 가능 (사용자별 뷰)
  • 논리적 독립성 보장 → 개념/내부 스키마가 바뀌어도 외부 스키마는 영향을 안 받음

👉 예시: 네이버 웹툰의 "사용자에게 보이는 구조" (웹툰 목록, 제목, 작가명만 보여줌)


2) 개념 스키마 (Conceptual Schema)

  • 데이터베이스 전체를 표현하는 스키마
  • 모든 사용자 관점을 통합한 논리적 전체 구조
  • 테이블, 속성, 관계, 제약조건 등 정의
  • 물리적 독립성 보장 → 내부 저장 방식이 바뀌어도 개념 스키마는 영향 없음

👉 예시: “회원(회원ID, 이름, 전화번호), 웹툰(웹툰ID, 제목, 작가), 주문(회원ID, 웹툰ID, 구매일자)” 같은 전체 구조


3) 내부 스키마 (Internal Schema)

  • 실제 물리적 저장 구조
  • 어떤 데이터 타입(int, char), 인덱스, 파티션, 저장 공간 배치 등 물리적 세부사항 정의
  • DBMS가 실제로 데이터를 디스크에 어떻게 저장하는지 표현

👉 예시: 웹툰 제목을 VARCHAR(100)로 저장, 회원ID를 INT로 저장, 인덱스 설정 등


스키마 간 독립성

  • 논리적 독립성: 개념 ↔ 외부
    • 개념 스키마 변경(테이블 구조 바뀜) → 외부 스키마는 영향 없음
  • 물리적 독립성: 내부 ↔ 개념
    • 물리적 저장 방식 변경(인덱스 추가, 파티셔닝 등) → 개념/외부 스키마 영향 없음

728x90
반응형
LIST