데이터베이스 Schema(스키마)란?
2022. 3. 16. 10:20ㆍTheory
반응형
Schema(스키마)란?
데이터베이스 관점에서의 스키마란, 데이터의 구조, 형식, 제약조건에 관한 전반적인 명세를 기술한 것이라고 볼 수 있다. 개체의 특성을 나타내는 속성(Attribute), 속성의 집합으로 이루어진 개체(Entry), 개체 사이에 존재하는 관계(Relation)에 대한 정의와 이를 유지하는데 필요한 제약조건들을 기술한 것이다.
쉽게 말해 시스템을 이루는 전반적인 데이터의 흐름의 정의나 그 안에 들어가는 테이블의 정의 등, 데이터가 사용되는 모든 부분에 대한 정의를 내리는 부분을 스키마라고 생각하면 편할 것이다.
스키마의 특징
- 스키마는 데이터 사전에 저장된다 (데이터 사전: 중앙 저장소)
- 특정 데이터 모델을 이용해서 만들어지게 된다
- 시불변성을 갖는다
- 데이터의 구조적 특성을 의미한다
- 인스턴스에 의해 규정된다
Conceptual Schema(개념 스키마 = 전체적인 뷰)
- DBA 관점에서의 스키마
- 전체 시스템의 관점에서 논리적인 구조를 갖는다
- 데이터베이스 당 하나만 존재한다
- 모든 시스템 관점에서 필요한 개체의 관계, 제약조건, 접근권한, 보안정책, 무결성 규칙 등이 포함된다
Internam Schema (내부 스키마 = 저장 스키마)
- 프로그래머, 시스템 설계자의 관점에서의 스키마
- 데이터베이스 내부에 저장되는 레코드의 형식, 물리적 순서, 인덱스의 유/무등의 설정사항을 갖는다
External Schema (외부 스키마 = 사용자 뷰 = sub schema)
- 응용 프로그래머의 입장에서 보는 스키마
- 사용자나 응용프로그래머가 각 개인의 입장에서 필요로 하는 데이터베이스의 논리적 구조를 정의한 것
- SQL(질의어)를 이용하여 DB를 사용한다
반응형
'Theory' 카테고리의 다른 글
스로틀링 (Throttling), 디바운싱(debouncing)이란? (0) | 2022.03.16 |
---|---|
트랜잭션(Transaction)이란? (0) | 2022.03.16 |
바인딩(Binding)이란? (0) | 2022.03.16 |
쿠키(Cookie)와 세션(Session)의 의미, 차이점 (0) | 2022.03.16 |
CDN(Content Delivery Network)이란? (0) | 2022.03.16 |