DATABASE

데이터베이스(DB) 스키마

YoonJong 2022. 10. 19. 15:55
728x90

스키마란?

데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것을 의미한다.


스키마 예시 (=개념스키마)

고객번호 이름 나이 주소
INT CHAR(10) INT CHAR(20)

 

데이터를 데이터베이스에 저장하기 쉽기때문에, 많은 사용자가 이용한다.

하지만, 내부 구조와 동작 방식은 매우 복잡하기 때문에 이것을 모두 이해 하기 어렵다.

따라서 미국 표준화 기관에서는 내부 구조를 몰라도 일반 사용자가 쉽게 이해하고 이용할 수 있도록 제안했다.

 

외부단계로 갈수록 구체적이게 된다.

1. 외부단계 : 집주인 관점

2. 개념단계 : 관리인 관점

3. 내부단계 : 건설업체 관점

 

집주인은 자기의 집만 잘알면 되지만, 관리인은 하나의 집이아닌 , 한 동의 아파트에 대해 알아야하고,  

건설업체는 한개의 아파트가 아닌, 전체 아파트의 관점에서 바라봐야 한다.


데이터베이스 관점에서 알아보자.

 

외부단계 에서는 개별 사용자 관점에서 데이터베이스를 이해하고 표현한다.

사용자에게 필요한 데이터베이스를 정의한 것을 외부 스키마 라고 부르며, 각 사용자가 생각하는 데이터베이스의 모습을 표현한 스키마는 사용자마다 다르다.

ex ) 고객관리담당의 스키마 != 주문관리담당의 스키마


개념단계 에서는 모든 사용자에게 필요한 데이터를 통합해서 전체 데이터베이스의 구조를 정의한다.

이를 개념 스키마 라고 한다.

모든 개별 사용자가 생각하는 데이터베이스의 모습을 하나로 합친 형태이다.

개념 스키마에서는 어떤 관계가 존재하고 어떤 제약조건이 있는지 정의하며, 보안, 접근권한에 관한 것도 포함한다.

일반 적인 스키마를 얘기하면 아래와 같은 개념 스키마를 의미하며, 하나의 데이터베이스에는 하나의 개념 스키마가 존재한다.

번호 이름 나이 직업 주소
INT VARCHAR(10) INT VARCHAR(10) VARCHAR(20)

내부단계 에서는 저장 장치에 실제로 저장되는 방법을 정의하며 내부 스키마라고 부른다.

 

고객담당팀

성별 나이 직업
CHAR(2) INT CHAR(10)

상품배송팀

고객번호 고객이름 주소 연락처
INT CHAR(10) CHAR(20) CHAR(20)
728x90