[수업출처] 숙명여자대학교 IT공학전공 박영호 교수님 수업 '데이터베이스'

 

1. 데이터 모델

- 모델: 실체를 가져올 수 없기 때문에, 핵심 특성을 담은 모형을 등장시켜 실체를 설명하기 위한 것

- 어떤 데이터에 대한 개념적, 형식적 표현

- original 대상을 다음 3가지로 구분하여 설명

1) 구조 structure (ex. DML 정의: CREATE SCHEMA ... )

2) 연산 operation (구조를 운용하기 위함. SELECT, DELETE, INSERT, UPDATE ...)

3) 제약조건 constraint (개념들의 집합)

 

종류

1) Conceptual Data Models (high-level, semantic-level) 개념적 데이터 모델

- 데이터를 높은 수준이나 의미적 수준으로 표현하는 데이터 모델

- ex) '학생' 테이블의 구성요소 - 나이, 주소 등

→ Database Schema

→ 데이터 베이스를 설계한다는 것 = Schema를 설계하는 것

 

2) Physical Data Models (low-level, internal-level) 물리적 데이터 모델

- 데이터를 낮은 수준이나 물리적 수준으로 표현하는 데이터 모델

- 데이터가 디스크에 어떻게 저장되는 것이 효과적인지 설명하기 위한 구현 수준의 실질적 데이터 모델

- ex) '나이'는 4byte 정수로, B-tree index 구축하자 등을 정하는 일

 

3) Implementation Data Models (record-oriented, representational)

- 상위 두 모델의 중간 레벨로, 상용 제품의 구현 시 적용되는 데이터 모델

 

4) Self-Describing Data Model

- data value를 가진 data들의 설명을 결합한 데이터 모델

- ex) XML, NoSQL systems

 

2. Schema vs Instance

1) Schema (구조, 뼈대)

- 데이터베이스에 대한 설명서

- 데이터베이스 구조 & 제약조건들에 대한 설명 포함

- 데이터베이스 카탈로그에 존재

 

- Schema Diagram 스키마 도면: 데이터베이스 스키마를 diagram 형식으로 표현한 것 (ex. E-R diagram)

- 테이블들을 구성하고 있는 속성들을 그림으로 표현한 데이터 설계 도면

 

- 스키마 구성: 스키마의 구성요소 또는 스키마에 포함된 객체 

 

2) Database State

- 특정 시점에 데이터베이스에 저장된 실제 데이터

- 데이터베이스의 모든 데이터 집합이 포함됨

= database instance (= occurrence, snapshot)

    - instance는 개별 데이터베이스 구성요소에도 적용됨

    - ex) record instance, table instance, entity instance

 

3) 비교

- 스키마는 자주 변하지 않음

- 인스턴스는 (state) 데이터베이스가 갱신될 때마다 변함

- 스키마 = intention

- 인스턴스 = extension

- ex) 학생 릴레이션의 나이는 '22', 주소는 '강남구 논현동', 학년은 '3' 일 때, 

나이, 주소, 학년schema,

'22', '강남구 논현동', '3'Instance

 

'Database > SQL' 카테고리의 다른 글

[SQL] CH01 - 15  (2) 2022.11.17
[Lecture] 1. 데이터베이스 시스템  (0) 2022.03.21
[MySQL] SQL 옵티마이저  (0) 2021.01.18
[MySQL] 데이터 제어어 : DCL  (0) 2021.01.18
[MySQL] Titanic 예제  (0) 2021.01.11

+ Recent posts