티스토리 뷰
[database] 관계형 데이터 모델의 구조(릴레이션)와 매핑 룰(Mapping Rule/ER 모델을 관계형 데이터 모델로 변환)
moonibot 2019. 12. 17. 20:51관계형 데이터 모델
- 데이터를 테이블(Table) 또는 릴레이션(Relation)의 구조로 표현하는 논리적 데이터 모델
관계형 데이터 구조 : 릴레이션(Relation)
- 데이터를 원자 값(Atomic Value)으로 갖는 이차원의 테이블로 표현하는데, 이를 릴레이션(Relation)이라 한다,
- 릴레이션 구조는 물리적인 저장 구조를 나타내는 것이 아닌 논리적 구조이므로 다양한 정렬 기준을 통하여 릴레이션으로 표현할 수 있다.
- 릴레이션은 구조를 나타내는 릴레이션 스키마(Relation Schema), 실제 값들인 릴레이션 인스턴스(Relation Instance)로 구성된다.
- 릴레이션의 열(Column)을 속성(Attribute)이라 하고, 행(Row)을 튜플(Tuple)이라 한다.
- 릴레이션에서 하나의 애트리뷰트가 취할 수 있는 같은 타입의 원자(Atomic)값들의 집합을 도메인이라고 한다. 도메인은 실제 애트리뷰트 값이 나타날 때 그 값의 합법 여부를 시스템이 검사하는 데에도 이용한다.
릴레이션
ER 모델을 관계형 데이터 모델로 변환
- 개념적 데이터 모델인 ER 모델을 논리적 데이터 모델인 릴레이션 스키마로 변환하는 것으로, 매핑 룰(Mapping Rule)이라고도 한다.
- ER 도형에서의 개체와 관계는 관계형 데이터 모델에서의 개체 릴레이션, 관계 릴레이션으로 변환하여 표현
- 속성은 컬럼(Column), 식별자는 기본키, 릴레이션 간의 관계는 기본키와 이를 참조하는 외래키(Foreign Key)를 이용하여 표현
<예시> 개체 A, B와 관계 Y로 이루어진 ER 모델을 관계형 데이터 모델에서의 릴레이션 스키마로 변환하는 과정은 다음과 같다.
- 개체 A, B는 각각 독립적인 릴레이션 A, B로 표현. ER 도형에서의 각 개체의 속성들은 각 릴레이션의 속성들로 정의되고, 기본키는 밑줄을 그어 표시한다.
· 관계 Y가 1 : 1 관계 → 릴레이션 A의 기본키를 릴레이션 B의 외래키로 추가하거나 릴레이션 B의 기본키를 릴레이션 A의 외래키로 추가하여 표현
· 관계 Y가 1 : N 관계 → 릴레이션 A의 기본키를 릴레이션 B의 외래키로 추가하여 표현
· 관계 Y가 N : M 관계 → 릴레이션 A와 B의 기본키를 모두 포함함 별도의 릴레이션으로 표현. 생성된 별도의 릴레이션을 교차 릴레이션(Intersection Relation) 또는 교차 엔티티(Intersection Entity)라고 한다.
<예시> 상위 개체 A와 하위 개체 B, C가 ISA 관계로 이루어진 ER 모델을 다음과 같은 방법을 이용하여 릴레이션 스키마로 변환한다.
- 방법 1 : A 릴레이션의 기본키를 B, C 릴레이션의 외래키로 추가하여 표현. 즉 A, B, C 세 개의 릴레이션이 생성.
- 방법 2 : A가 가지고 있는 속성과 B, C가 가지고 있는 속성을 각자 결합하여 표현. 즉 A 속성을 포함하고 있는 B, C 두 개의 릴레이션이 생성.
'IT > database' 카테고리의 다른 글
[database] 릴레이션 스키마(Relation Schema), 릴레이션 인스턴스(Relation Instance), 속성(Attribute), 튜플(Tuple) (0) | 2019.12.17 |
---|---|
[database] 식별 관계 (Identifying), 비식별 관계 (Non-identifying) (0) | 2019.12.17 |
database, ER(Entity Relationship) 모델과 도형 및 개체와 관계 타입 (0) | 2019.11.28 |
database, 데이터베이스 설계 (0) | 2019.11.28 |
database, 데이터 사전 Data Dictionary / 메타 데이터 Meta Data (0) | 2019.11.27 |