데이터베이스 스키마의 개념과 정의

2019. 5. 7. 22:47정보처리 산업기사/데이터베이스

반응형

스키마(Schema)란?

데이터베이스의 구조와 제약조건에 관한 전반적인 명세를 기술한 것(메타 데이터의 집합).

스키마는 데이터베이스를 구성하는 데이터 개체(Entity), 속성(Attribute), 관계(Relationship) 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관해 전반적으로 정의를 합니다.

사용자의 관점에 따라 외부, 개념, 내부 스키마로 나누어집니다.

 

 

스키마의 특징

  • 데이터 사전에 저장이 됩니다.
  • 현실 세계의 특정한 한 부분의 표현으로 특정 데이터 모델을 이용해서 만들어집니다.
  • 데이터의 구조적 특성을 의미합니다.
  • 시간에 따라 불변의 특성을 갖습니다.
  • 인스턴스에 의해 규정됩니다.

 

 

외부 스키마(External Schema) 또는 사용자 뷰(View)

DB 전체 중에서 개개인 사용자나 응용 P/G에서 필요로 하는 개채와 관계에 대해서 정의한 것을 외부 스키마라고 합니다.
때로는 전체 DB의 논리적 일부분이 된다는 의미에서 서브 스키마 또는 DB를 들여다보는 창이라는 의미에서 View라고도 합니다. 따라서 사용자의 수나 응용 P/G의 수만큼 많은 외부 스키마가 존재할 수 있으며, 이를 통해 DB에 접근할 수 있게 되므로 결국 외부 스키마는 DB에 대한 외부로부터의 접근 통로 구실을 하게 됩니다. 

 


개념 스키마(Conceptual Schema) 또는 전체적인 뷰(View)

조직체 전체를 관장하는 입장에서 DB를 정의한 것입니다. 따라서 조직체의 모든 용용 시스템에서 필요로 하는 모든 개체, 관계 그리고 제약 조건들을 명시 포함해야 합니다.

DB를 효율적으로 관리하는데 필요한 접근권한, 보안정책, 무결성 규칙 등에 관한 사항들도 추가적으로 포함되기도 합니다. 그래서 경우에 따라서는 이 개념 스키마라는 녀석을 그냥 '스키마'라고 부르기도 합니다.

개념 스키마는 DB 전체에 대해 기술한 것이기 때문에 유일할 수밖에 없습니다. 즉 DB 전체에 개념 스키마는 하나만 있을 수 있습니다.

 


내부 스키마(Internal Schema) 또는 저장 스키마(Storage Schema)

물리적 저장장치의 입장에서 DB가 저장되는 방법이 기술되어 있습니다. 구체적으로는 개념 스키마를 디스크 기억장치에 물리적으로 구현하기 위한 방법을 기술한 것으로서 그 주된 내용은 실제로 저장될 내부 레코드의 형식, 내부 레코드의 물리적 순서, 인덱스의 유/무 등에 관한 것입니다. 
하지만, 실제의 DB는 내부 스키마에 의해 곧바로 구현되는 것이 아니라 내부 스키마에서 기술한 내용에 따라 운영체제의 파일 시스템에 의해 물리적 저장장치에 기록되는 것입니다. 
실무적으로는 내부 스키마에 의해 DV의 실행 속도가 결정적으로 영향을 받기 때문에
DB의 구축 목적에 따라 내부 스키마를 결정해야 할 필요가 있습니다. 주로 시스템 프로그래머나 시스템 설계자가 보는 관점의 스키마입니다.

 

반응형