1. 데이터 모델링과 데이터 모델의 개념
1) 데이터 모델링
현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 과정
a. 개념적 모델링(conceptual modeling) - 현실세계에 존재하는 데이터를 개념적 세계로 옮기는 것
b. 논리적 모델링(logicl modeling) - 개념적세계의 데이터를 데이터베이스에 저장할 논리적 구조로 표현
2) 데이터 모델
데이터 모델링의 결과물을 표현하는 도구로 데이터 구조, 연산, 제약조건으로 구성
a. 개념적 모델 - 개념적 모델링을 통해 개념적 구조로 표현하는 도구, 개체-관계 모델
a. 논리적 모델 - 논리적 모델링을 통해 논리적 구조로 표현하는 도구, 관계 데이터 모델
2. 개체 - 관계 모델
개체와 개체 간의 관게를 이용해 현실 세계를 개념적 구조로 표현한 것
1) 개체(Entity)
사람이나 사물과 같이 구별할 수 있는 모든 것
a. 개체 타입 - 개체를 고유한 이름과 속성으로 정의
b. 개체 인스턴스(개체 어커런스) - 속성이 실제 값을 가지면서 실체화된 개체
c. 개체 집합 - 개체 인스턴스의 집합
2) 속성(attribute)
개체가 가지고 있는 고유한 특성. 의미있는 데이터의 가장 작은 논리적 단위
a. 단일 값 속성 / 다중 값 속성
b. 단순 속성 / 복합 속성
c. 유도 속성
d. 널 속성
e. 키 속성
3) 관계(Relationship)
개체와 개체가 맺고 있는 연관성
a. 관계의 유형
- 관계에 참여하는 개체 타입의 수를 기준 : 이항 관계, 삼항 관계, 순환 관계
- 매핑카디널리티(mapping cardinality) 기준 : 1 : 1 관계, 1 : n 관계, n : m 관계
b. 관계의 참여 특성
- 필수적 참여 / 선태적 참여
c. 관계의 종속성
- 약한 개체(종속 개체) / 강한 개체(오너 개체)
4) E-R 다이어그램
개체-관계 모델을 이용해 현실 세계를 개념적으로 모델링한 결과물을 그림으로 표현
3. 논리적 데이터 모델
개념적 구조를 데이터베이스에 저장할 수 있는 논리적 구조로 표현
1) 계층 데이터 모델
- 논리적 구조를 트리형태로 표현.
- 일대다, 두 개체 사이의 관계를 하나만 표현 가능
- 루트 개체가 존재하고 사이클이 생기지 않음
- 구조가 복잡하고 연산이 어려움
2) 네트워크 데이터 모델
- 논리적 구조를 그래프형태로 표현
- 일대다, 두 개체 사이의 관계를 여러개 표현 가능
- 오너-멤버 관계
- 구조가 복잡하고 연산이 어려움
3) 관계 데이터 모델
- 가장 많이 쓰이는 데이터 모델
- 논리적 구조를 2차원 테이블형태로 표현
'CS > Database' 카테고리의 다른 글
[데이터베이스] 06. 관계 데이터 연산 (0) | 2020.03.30 |
---|---|
[데이터베이스] 05. 관계 데이터 모델 (0) | 2020.03.30 |
[데이터베이스] 03. 데이터베이스 시스템 (0) | 2020.03.27 |
[데이터베이스] 02. 데이터베이스 관리시스템 (0) | 2020.03.26 |
[데이터베이스] 01. 데이터베이스 기본 개념 (0) | 2020.03.26 |
댓글