데이터 모델링
데이터 모델링은 현실의 대상을 컴퓨터상의 데이터로 매핑(mapping)하는 것이다
개념적 데이터 모델링은 값을 E-R모델로 모델링 하는 것이며,
관계 데이터 모델 릴레이션을 최종적으로 물리적 구조로 변환한다
데이터 모델이란?
D(데이터 모델) = <S, O, C>
S(구조): 릴레이션 및 데이터의 정적 성질
O(연산): 카티션프로덕트, 합집합 등 데이터의 동적 성질이자 조작 기법
C(제약 조건): 관계 데이터 모델의 논리적 제약들
* 최근에는 객체 지향 데이터 모델 및 객체-관계 데이터 모델도 사용한다
개체는 다른 것과 구별되는 객체로 개체 타입(entity type)을 통해 표현된다
~ 개체 인스턴스들의 집합인 개체 집합으로 개체의 이름과 애트리뷰트들로 정의된다
1. 단순 애트리뷰트: 더 이상 작은 구성 원소로 분해할 수 없는 애트리뷰트(원자값)
2. 복합 애트리뷰트: 단순 애트리뷰트로 분해할 수 있는 애트리뷰트
3. 단일 값 애트리뷰트: 특정 개체에 대해 하나의 값을 가지는 애트리뷰트
4. 다중 값 애트리뷰트: 한 개체에 대해 여러 값을 가지는 애트리뷰트
ex) ‘학생’ 개체 타입에 ‘취미’ 애트리뷰트
5. 유도 애트리뷰트: 애트리뷰트의 값이 다른 애트리뷰트나 개체가 가진 값으로부터 유도됨
6. 저장 애트리뷰트: 유도 애트리뷰트를 생성하는데 사용되는 애트리뷰트
ex) 성적: 저장 애트리뷰트 / 평균 성적: 유도 애트리뷰트
7. 널(null) 애트리뷰트: null값을 가질 수 있거나 가진 애트리뷰트
* null: 값이 없는 것이 아니라 알 수 없거나 누락된 경우
개체들 사이에는 관계 타입(relationship type)이 있는데,
이는 개체들 사이의 대응(correspondence) 및 사상(mapping)을 의미한다
E-R 모델
개체-관계 모델(E-R 모델)은 현실 세계의 정보를 추상화한 대표적인 개념적 데이터 모델로,
개체 인스턴스의 집합인 개체 집합(타입)과 관계 인스턴스의 집합인 관계 집합(타입)으로 구성
E-R 다이어그램은 다 대 다(m:n) 관계 표현이 가능한데
두 개 이상의 개체 타입이 하나의 관계에 관련된 다원 관계,
두 개체 타입 사이에 둘 이상의 관계가 존재 가능한 다중 관계도 표현이 가능하다
* 인스턴스들을 유일하게 식별하는 키(key)는 밑줄을 그어서 표현한다
자기 자신의 애트리뷰트 만으로는 키를 명세할 수 없는 개체 타입을 약한 개체 타입이라고 하며,
이 경우 강한 개체 타입과 연관시켜 부분 키(partial key)를 통해 구분 = 식별 관계 타입
데이터 모델은 네트워크/계층/관계/객체지향/객체-관계 데이터 모델 등이 있다!
* 현재는 대부분 관계 데이터 모델을 사용한다
'Computer Science > Database, SQL' 카테고리의 다른 글
[HUFS/데이터베이스] #15 인덱스 (2) | 2021.11.17 |
---|---|
[HUFS/데이터베이스] #14 데이터베이스 설계 (0) | 2021.11.10 |
[HUFS/데이터베이스] #12 데이터 종속성과 정규화 (0) | 2021.11.03 |
[HUFS/데이터베이스] #11 View & Embedded SQL (0) | 2021.10.13 |
[HUFS/데이터베이스] #10 SQL 조작문 (0) | 2021.10.13 |