리안이와 함께하는 세상

[데이터베이스] 데이터베이스 스키마(Schema) 본문

9급 공무원/컴퓨터 일반

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

리안아범 2017. 3. 5. 20:11

: 데이터베이스에서 자료의 구조, 자료의 표현방법, 자료간의 관계를 형식 언어로 정의한 구조

 > DB내에 어떤 구조로 데이터에 저장되는가?! 를 나타내는 데이터베이스 구조


* 사용자의 관점에 스키마의 분류 : 외부(External), 개념(Conceptual), 내부(Internal)

 > 외부와 내부를 연결하는 개념!


 1. 외부스키마(사용자 시각, 사용자 뷰)

   - 사용자(응용프로그래머) 입장에서 필요한 데이터베이스의 논리적 구조를 정의

   - 각 사용자마다

데이터베이스에서 필요한 부분이

서로 다르기 때문에

외부스키마는

전체 데이터베이스의

한 부분(일부)

= 서브 스키마 or 뷰; 라고도 함

> 여러개의 외부스키마가 존재하는건 당연한 일,

  또 하나의 스키마를 여러 사용자가 공용할 수 있음

> 한 데이터베이스를 여러 관점에서 정의한 것 이라고도 할 수 있음


2. 개념스키마(시스템 프로그래머나 시스템 설계자의 시각)

  - 조직 전체 입장

에서

정의된

DB

<-> 외부스키마와 대조

 > 하나밖에 없음(스키마 전체이다. 그래서 그냥 스키마! 라고 하면 개념스키마를 나타냄)

 > 개체간의 관계, 제약조건 명시, 접근권한, 보안, 무결성 규칙에 관한 명세를 정의함


3. 내부스키마(물리적으로 저장하려는 시각)

  - 실제로 저장될 내부 레코드 형식, 물리적 순서, 인덱스의 유/무 등에 관한 것.

  - 물리적 저장구조, 어떻게 저장할 것인가?!

  ※ 물리 스키마 이런거 없음. 스키마는 외-개-내 세개만 있다!!



** Tip

* 전체적, 통합, 하나, 제약조건, 범 기관 > 개념

* 프로그래머, 뷰, 개별 사용자 > 외부

* 시스템 (프로그래머, 설계자), 물리적, 저장장치 > 내부

**