본문 바로가기
Dev Talks/Database

[Database #3] 데이터베이스 스키마의 정의와 종류

by 곰씨네IT 2017. 3. 8.



** 반응형 광고 **


1. 스키마란?

데이터 Entity(개체), Attribute(속성), Relationship(관계)와 같은 데이터베이스 구조와 기타 제약조건에 대한 명세를 기술한 것으로 데이터 사전 (Data Dictionary or System Catalog)에 저장되며 메타데이터(Meta-data) 라고도 합니다. 스키마는 개념 스키마, 외부 스키마, 내부 스키마로 나누어 지며 이를 스키마 3계층이라고 합니다.



2. 개념 스키마 (Conceptual Schema)

데이터베이스의 전체적인 구조를 논리적으로 표현한 것으로 Entity 간의 관계 및 제약조건, 무결성 규칙, 데이터베이스 접근권한 및 보안 등의 명세를 정의합니다. 보통 하나의 데이터베이스에 대해 1개만 존재하며 데이터베이스에 대한 전체적인 View 를 나타냅니다. 단순히 스키마(Schema) 라고 하면 보통 개념 스키마를 의미합니다. 개념스키마는 일반적으로 DBA에 의해서 구성되고 관리됩니다.


3. 외부 스키마 (External Schema)

사용자나 개발자 입장에서 논리적으로 데이터베이스의 구조를 정의한 것으로 하나의 데이터베이스에 대해 여러개가 존재할 수 있습니다. 다른 말로 서브 스키마로 라고도 표현하며 사용자 View 관점에서의 스키마입니다.


4. 내부 스키마 (InternalSchema)

데이터베이스의 물리적인 구조를 정의한 스키마로 데이터의 속성이나 저장 크기 등을 기술하고 있습니다. 내부스키마는 물리적인 저장장치와 밀접한 계층으로 시스템 프로그래머나 설계자 관점에서의 스키마입니다.



** 큰사각형 광고 **



댓글