1) 3층 스키마란?
사용자, 설계자, 개발자가 데이터베이스를 보는 관점에 따라 데이터베이스를 기술하고 이들간의 관계를 정의한 ANSI 표준이다.
데이터베이스 스키마 구조는 3단계로 구분되고 각각은 상호 독립적인 의미를 가지고 고유한 기능을 가진다. 데이터 모델링은 통합관점의 뷰를 가지고 있는 개념 스키마를 만들어가는 과정으로 이해할 수 있다.
스키마 : 데이터베이스를 구성하는 레코드의 크기, 키(key)의 정의, 레코드와 레코드의 관계, 검색 방법 등을 정의한 것. 즉, 스키마가 여러개가 모여 결국은 데이터베이스 전체를 구성한다.
2) 3층 스키마의 구조
항목 | 내용 |
외부스키마 (External Schema) |
- 사용자 관점, 업무상 관련이 있는 데이터 접근 방법이다. - 관련 데이터 베이스의 View를 표시한다. - 응용프로그램이 접근하는 DB를 정의 한다. |
개념 스키마 (Conceptual Schema) |
- 설계자 관점으로 사용자 전체 집단의 데이터베이스 구조이다. - 전체 데이터 베이스 내의 규칙과 구조를 표현한다. - 통합 데이터베이스 구조이다. |
내부 스키마 (Internal Schema) |
- 개발자 관점, DB가 물리적으로 저장된 형식이다. - 물리적 장치에서 데이터가 실제적으로 저장되는 방법을 표현한 스키마로 데이터 저장 구조, 레코드 구조, 필드 정의, 인덱스 등을 의미한다. |
3) 3층 스키마의 독립성
이렇게 3단계로 개념이 분리되면서 각각의 영역에 대한 독립성을 지정하는 용어가 바로 논리적인 독립성과 물리적인 독립성이다.
독립성 | 내용 | 특징 |
논리적 독립성 |
- 개념 스키마가 변경되어도 외부 스키마에는 영향을 미치지 않도록 한다. - 논리적 구조가 변경되어도 응용 프로그램에는 영향이 가지 않는다. |
- 사용자 특성에 맞는 변경이 가능 - 통합 구조 변경 가능. |
물리적 독립성 |
- 내부 스키마가 변경되어도 외부/개념 스키마는 영향을 받지 않도록 한다. - 저장장치의 구조변경은 응용프로그램과 개념 스키마에 영향이 없다. |
- 물리적 구조에 영향 없이 개념구조 변경 가능 또는 개념구조 영향 없이 물리적인 구조 변경 가능. |