호테의 노트에 오신 것을 환영합니다 🙌

Tableau와 Salesforce, Python과 SQL 등 데이터의 전반적인 것들을 다루는 기술 블로그입니다.

SQL

스키마(Schema)란?

Hote's Note 2025. 5. 17. 02:08

1) 스키마(Schema)의 정의

  • 스키마란, 데이터베이스의 논리적 구조를 정의한 메타데이터의 집합입니다.
  • 테이블, 열, 데이터 유형, 관계, 제약조건 등 데이터 구조를 명확하고 상세하게 기술합니다.
  • 데이터베이스 관리 관점에서는 다음과 같이 3단계 스키마 구조로 구분합니다:
단계 설명
외부 스키마 사용자나 응용 프로그램 관점에서 본 데이터 구조 (View)
개념 스키마 전체 데이터베이스의 논리적 구조 정의 (ERD, 테이블 간 관계 등)
내부 스키마 물리적인 데이터 저장 방식 정의 (인덱스, 파일 구조 등)
  • 이 구조를 3단계 데이터베이스 구조(Three-Schema Architecture) 라고 부릅니다.

 2) 스키마의 구성 요소

구성 요소 설명
테이블 데이터를 저장하는 기본 단위 (행과 열로 구성)
열(Column) 각 열은 특정 속성과 데이터 유형을 가짐
행(Row) 실제 데이터 레코드 한 건을 의미
데이터 유형 열마다 정해진 데이터 형식 (예: 정수, 문자, 실수 등)
관계 테이블 간의 연결 관계 (일대일, 일대다, 다대다)
제약조건 데이터 무결성을 위한 규칙 (예: 기본키, 외래키 등)

3) 스키마의 종류

스키마 유형 설명
개념 스키마 - 데이터베이스 전체의 논리적 구조
  • 테이블, 열, 데이터 유형, 관계를 설계
  • ERD(Entity Relationship Diagram) 기반
  • 일반적으로 데이터베이스 설계 초기 단계에서 정의
외부 스키마 
  • - 사용자나 애플리케이션 관점의 데이터 구조
  • 여러 사용자에게 맞춤형 뷰(View) 제공
  • 응용 프로그램과 사용자 그룹을 아우르는 구조

내부 스키마
  • 데이터의 실제 물리적 저장 방식 정의
  • 저장 파일, 레코드 배열, 인덱스 구조, 압축 방식 등 포함
  • DB 성능 및 효율성과 직접 관련 있음
  • DB 관리자(DBA)가 주로 관리

4) 비유 : 데이터베이스 = 아파트

아파트 데이터베이스
설계도 스키마
아파트의 방 테이블 (Table)
방 안의 가구 열 (Column)
실제 입주자 행 (Row, 레코드)
가구의 종류 데이터 유형 (Data Type)
입주 규칙 제약 조건 (Constraints)

 

'SQL' 카테고리의 다른 글

OLAP과 OLTP란?  (3) 2025.06.23
슈퍼키란?  (0) 2025.05.17
NoSQL이란?  (0) 2025.05.17
명시적 조인 vs 비명시적 조인  (0) 2025.05.06
DBeaver SQL 한글 마지막 글자 없어짐 현상 해결 방법  (0) 2025.04.16