본문 바로가기
Computer Science

[Database] Schema Architecture

by Henry Cho 2022. 2. 21.
728x90

Schema Architecture


포스트 난이도: HOO_Junior

 

[Notice] 포스트 난이도에 대한 설명

안녕하세요, HOOAI의 Henry입니다. Bro들의 질문에 대한 내용을 우선적으로 포스팅이 되다 보니 각각의 포스트에 대한 난이도가 달라서 난이도에 대한 부분을 작성하면 좋겠다는 의견을 들었습니다

whoishoo.tistory.com


 

# Schema Architecture

Schema architecture는 세 가지 방식의 architecture가 존재한다.

Schema architecture는 프로그램 데이터의 독립성을 보장한다.

이를 Porgram-data independece 또는 insulation이라고 부른다.

이 말인 즉슨, 데이터베이스에서 데이터를 처리하는 과정을 3가지 방식으로 나누어서 필요한 부분에 대한 이해를 돕기 쉽도록 만들어준다는 것이다.

한마디로 Schema architecture를 통해 3단계로 나누어서 특정 데이터베이스의 이해를 도와준다.

세 가지 Schema architecture는 Internal, Conceptual, External로 나뉜다.


# External Schema

External schema는 End user라고 불리는 실질적인 데이터베이스 사용자에게 제공되는 schema architecture이다.

사용자에게 데이터베이스에 대한 전반적인 구조나 특징을 알려주는데 conceptual schema와 같이 사용되는 편이다.

External schema에서는 External mapping이나 Conceptual mapping을 사용한다.


# Conceptual schema

Conceptual schema는 data model에 대한 structure나 constraints들을 제시하는데 이 역시도 사용자에게 데이터베이스에 대한 전반적인 특징을 알려주는 역할을 수행한다.

따라서 일반적으로 External schema와 같이 사용되기도 하며 Conceptual mapping을 제공한다는 점에서는 같지만 Internal mapping을 제공한다는 점에서는 External schema와 차이를 두고 있다.

한마디로 External schema보다는 내부적인 기능에 조금 더 초점을 두고 설명하는 것이 바로 Conceptual schema인 셈이다.


# Internal Schema

Internal schema는 실질적으로 데이터 값이 특정 구조나 제약에 의해서 어떤 식으로 저장되는지에 대해서 알려준다.

예를 들면 신규 데이터 값에 대한 데이터 저장 경로를 설명해주는 것이 Internal schema에 해당한다.

그렇다 보니 Internal schema의 경우에는 Physical data model을 사용한다.


728x90

댓글