스키마 3계층 ( 외부 스키마, 개념 스키마, 내부 스키마)
스키마의 3계층
- 데이터베이스 관리 시스템은 외부적 스키마에 따라 명시된 사용자의 요구를 개념적 스키마에 적합한 형태로 변경
- 다시 내부적 스키마에 적합한 형태로 변환
외부 스키마(External Schema) = 사용자 뷰(View)
사용자나 응용프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
전체 데이터베이스의 한 논리적인 부분으로 볼 수 있음 ~> 서브 스키마(Sub Schema)라고도 한다.
하나의 데이터베이스 시스템에는 외부 스키마가 여러 개 존재할 수 있음
하나의 외부 스키마를 여러 응용 프로그램이나 사용자가 공용할 수도 있음
같은 데이터베이스에 대해서도 서로 다른 관점에서 정의할 수 있도록 허용
일반 사용자는 질의어(SQL)을 이용하여 DB를 사용
응용 프로그래머는 C, JAVA등의 언어를 사용하여 DB에 접근
개념 스키마(Conceptual Schema) = 전체적인 뷰(View)
데이터베이스의 전체적인 논리적 구조
모든 응용 프로그램이나 사용자들이 필요로 하는 데이터를 종합한 조직 전체의 데이터베이스로 하나만 존재한다.
개체간의 관계, 제약 조건을 나타내고 DB 접근 권한, 보안 및 무결성 규칙에 관한 명세를 정의
데이터베이스 파일에 저장되는 데이터의 형태를 나타내는 것으로, 단순히 스키마(Schema)라고 하면 개념 스키마를 의미함
기관이나 조직체의 관점에서 데이터베이스를 정의한 것
데이터베이스 관리자(DBA)에 의해서 구성됨
내부 스키마(Internal Schema) = 저장 스키마(Storage Schema)
물리적 저장장치의 입장에서 본 데이터베이스 구조로, 물리적인 저장장치와 밀접한 계층
실제로 데이터베이스에 저장될 레코드의 물리적인 구조를 정의, 저장 데이터 항목의 표현방법, 내부 레코드의 물리적 순서 등을 나타냄
시스템 프로그래머나 시스템 설계자가 보는 관점의 스키마이다.