데이터 세계
- 현실 세계 -> 개념 세계 = 값 사실 -> 개념적 구조 (추상화 개념적 모델링)
- 개념 세계 -> 컴퓨터 세계 = 개념적 구조 -> 논리적 구조 (데이터 모델)
현실 세계 구조적 표현
: 데이터베이스 설계
1. 개념적 모델링
- 현실 세계 -> 추상적 개념, 개체 타입으로 표현
- 데이터 모델링
- 데이터 구조화

Data Modeling
- 데이터베이스 설계 과정 일부
: 개념적인 구조와 논리적인 구조를 거쳐 실제 데이터를 저장할 수 있는 물리적 구조로 변환
-
개념적 데이터 모델링
: 애트리뷰트로 기술된 개체 타입 & 개체 타입 간 관계 이용 ex) E-R Model
-
논리적 데이터 모델링
- field로 기술된 record type, 이들 간 관계 이용 ex)relational data model
Data model
- 데이터 모델 : D = <S, O, C>
- S (구조)
- O (연산)
- C (제약 조건)
Entity Type
- 개체 : 다른 것과 구별되는 객체 (개체=객체)
- 개체 타입 : 이름, 애트리뷰트로 정의
- 애트리뷰트 유형
- 단순 & 복합
(단순 : 더 이상 분해 불가)
- 단일 & 다중
(단일 : 특정 개체에 대해 하나의 값)
- 유도 & 저장
(유도 : 가지고 있는 값에서부터 유도됨)
- NULL (NULL값 가짐)
Relationship Type
: 개체 집합들 사이의 대응, 즉 사상(Mapping) 의미

- 사상 원소 수 : 관계 타입의 원소 수 제약조건
- 일대일 ex) marriage : bridegroom ↔ bride
- 일대다 ex) mothership : mother ← children
- 다대일 ex) faculty : professor → department
- 다대다 ex) enrollment : student ↔ course

- 관계 타입의 참여 제약조건
- 전체 참여 : A-B 관계에서 개체 집합 A의 모든 개체가 A-B 관계에 참여
- 부분 참여 : A-B 관계에서 개체 집합 A의 일부 개체만 A-B 관계에 참여
- 존재 종속 : 어떤 개체 b의 존재가 개체 a의 존재에 종속됨

Entity-Relationship Model (E-R Model)
- 개념적 데이터 모델(현실세계의 개념적 표현)
- 개체 집합 : 한 개체 타입에 속하는 모든 개체 인스턴스
- 관계 집합 : 한 관계 타입에 속하는 모든 관계 인스턴스
- E-R 모델 그래픽 표현

Entity Type & Key Attribute
- Key attribute : 개체 집합 내에서 개체마다 상이한 값 갖는 애트리뷰트 / 애트리뷰트 집합
- Key : 개체 타입 내 모든 개체 인스턴스들 유일하게 식별 (동일한 값 갖는 개체 인스턴스는 없다)
Weak Entity Type
- 약한 개체 타입 : 애트립뷰트 만으로는 키 명세 불가
- 구별자 : 약한 개체 집합 내에서만 서로 구별할 수 있는 애트리뷰트
- 식별 관계 타입 : 약한 개체를 강한 개체에 연관시킴
E-R Diagram 표기법

-> example

Logical Data Model
: 개념적 구조를 데이터베이스로 구현하기 위한 중간 단계, 레코드 타입과 관계로 표현
- 개념적 데이터 모델 : 개체-관계 데이터 모델
Relational Data Model
- 데이터베이스 : 릴레이션 - 테이블의 집합
- 릴레이션 스키마 : 개체, 관계성을 릴레이션으로 정의
Data Structure Diagram

- 구성 요소
- 사각형 노드 : 레코드 타입
- 링크 : 레코드 타입 간 일대다 관계
- 레이블 : 관계 이름
- 스키마 다이어그램
- 트리 형태 : 계층 데이터 모델
- 그래프 형태 : 네트워크 데이터 모델
Network Data Model
- 허용되는 레코드 타입, 관계성 명세

Hierarchical Data Model
- 스키마 다이아그램이 tree
- parent-child 관계
