반응형
DB를 공부하면서 가장 처음 배우는 것이 스키마(Schema)에 대한 개념입니다. 데이터베이스에서 가장 기초적인 내용이지만 처음 데이터베이스를 접하는 학생이나 비전공자들이 이해하기에는 쉽지 않은 개념입니다. 그럼 스키마의 개념 및 특징과 외부 스키마, 개념 스키마, 내부 스키마에 대해 알아보겠습니다.
스키마(Schema)란?
- 스키마는 데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 메타데이터의 집합입니다.
- 스키마는 데이터베이스를 구성하는 데이터 개체(Entity), 개체의 특성을 나타내는 속성(Attribute), 개체 사이에 존재하는 관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관하여 기술합니다.
- 스키마는 사용자의 관점에 따라 외부 스키마, 개념 스키마, 내부 스키마로 정의합니다.
스키마의 특징
- 스키마는 데이터 사전(Data Dictionary)에 저장됨.
- 스키마는 현실 세계의 특정한 부분을 모델로 만들어짐.
- 스키마는 시간이 지나도 불변하는 특징을 가짐.
- 스키마는 데이터의 구조적 특성을 의미하며, 인스턴스에 의해 규정됨.
※ 데이터 사전(Data Dictionary)이란?
데이터베이스 전반에 대한 정보를 제공하는 테이블(Table) 및 뷰(View)들의 집합
스키마의 3 계층
스키마의 3 계층은 사용자의 관점에 따라 나뉜 것으로 다음과 같은 특성을 가집니다.
외부 스키마(External Schema) = 사용자 뷰(View)
- 사용자의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
- 동일한 데이터베이스에도 여러 개의 외부 스키마가 존재할 수 있으며, 하나의 외부 스키마를 여러 사용자가 공유할 수 있음
- 같은 데이터베이스에 대해서도 사용자의 관점에 따라 서로 다른 관점을 정의할 수 있도록 허용
→ 사용자는 외부 스키마를 통해 구조를 확인하고 데이터 조작어(DML)로 데이터를 사용함.
개념 스키마(Conceptual Schema) = 전체적인 뷰(View)
- 데이터베이스의 전체적인 논리적 구조로서 물리적 구현은 고려하지 않으며, 사용자가 필요로 하는 종합적인 데이터베이스로 존재
- 데이터베이스에 개념 스키마는 하나만 존재
- 개체간의 관계나 보안, 무결성 등 제약 조건에 대한 명세를 정의
- 데이터베이스 파일에 저장되는 데이터 형태를 나타냄
→ DBA는 외부 스키마를 통해 전체적인 구조를 확인하고 데이터 정의어(DDL), 데이터 제어어(DCL)로 구조를 설계함.
내부 스키마(Internal Schema) = 저장 스키마(Storage Schema)
- 물리적 저장장치의 관점으로 본 데이터베이스의 구조
- 실제로 저장될 데이터 레코드의 물리적인 구조를 정의하며, 물리적 순서 등을 표현
- 물리적 저장장치와 밀접한 관계로 개념 스키마를 저장장치에 구현하기 위한 방법을 기술
→ 시스템 프로그래머는 내부 스키마를 통해 데이터 내부 구조를 확인하고 물리적인 데이터 구조를 설계함.
반응형
'IT > DB' 카테고리의 다른 글
DB - 정규화(Normalization) 과정(1NF, 2NF, 3NF, BCNF) (0) | 2023.03.20 |
---|---|
DB - 인덱스(Index)의 개념과 장단점 (0) | 2023.02.19 |
DB - DROP, TRUNCATE, DELETE 차이점 비교 (0) | 2023.02.18 |
DB - 데이터베이스 언어 DDL, DML, DCL 정의 (0) | 2023.02.17 |
댓글