본문 바로가기
웹개발/데이터베이스

[데이터베이스]스키마(schema)

by 지구별 여행자 임탱 2024. 3. 25.
728x90

데이터베이스 스키마(schema)는 데이터베이스의 구조와 제약 조건에 관한 전반적인 명세를 정의한 메타데이터의 집합입니다. 이는 데이터베이스에서 데이터가 어떻게 구조화되고, 관리되며, 관계를 맺는지에 대한 청사진을 제공합니다. 

데이터베이스 스키마는 테이블 이름, 필드, 데이터 유형 및 이러한 엔티티 간의 관계 등을 포함한 데이터베이스의 논리적 구조를 정의합니다.

스키마 설계 프로세스는 데이터 모델링이라고도 하며, 이는 데이터베이스 사용자, 관리자 및 프로그래머에게 유용한 정보를 제공합니다.

 

스키마의 유형
 * 개념 스키마(Conceptual Schema): 전체적인 뷰를 제공하며, 조직 전체의 데이터베이스 구조와 정책을 정의합니다.
 * 내부 스키마(Internal Schema): 데이터가 실제로 데이터베이스 시스템 내에서 어떻게 저장되는지에 대한 뷰를 제공합니다.
 * 외부 스키마(External Schema): 사용자 또는 사용자 그룹이 데이터베이스와 상호 작용하는 방식을 정의하는 사용자 뷰를 제공합니다.

 

스키마와 데이터베이스 인스턴스
 * 스키마: 데이터베이스의 구조적 특성을 의미하며, 시간에 따라 불변입니다.
 * 데이터베이스 인스턴스: 특정 시점에서 데이터베이스의 데이터를 나타내며, 시간에 따라 변할 수 있습니다.

 

스키마의 중요성
 * 효율성 증가: 올바르게 설계된 데이터베이스 스키마는 데이터베이스의 성능을 최적화하고, 정보 검색 시간을 단축시킵니다. 이는 기업이 정보를 더 빠르게 접근하게 하여 의사 결정 과정을 가속화합니다 1.
 * 데이터 무결성 보장: 스키마는 데이터의 무결성을 유지하는 데 중요한 역할을 합니다. 데이터 유형, 제약 조건, 관계 등을 명시함으로써 데이터의 정확성과 일관성을 보장합니다.
 * 데이터 중복 최소화: 스키마 설계 과정에서 데이터 중복을 최소화하는 방법을 고려함으로써, 저장 공간을 절약하고 데이터 관리를 간소화할 수 있습니다.


스키마 설계의 도전
 * 복잡성 관리: 데이터베이스 스키마 설계는 복잡한 과정이며, 조직의 요구 사항과 데이터 관계를 정확히 반영해야 합니다. 이는 시간과 노력이 많이 소요되는 작업일 수 있습니다.
 * 유연성 유지: 비즈니스 요구 사항이 변함에 따라 데이터베이스 스키마도 수정되어야 할 수 있습니다. 따라서 스키마 설계 시 유연성을 고려하는 것이 중요합니다.