일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- ubuntu 12.04
- NC다이노스
- 단통법
- ubuntu
- 프로야구
- 문파문파
- 태그를 입력해 주세요.
- Git
- 리뷰
- Tizen
- 해외직구
- 문파문파 공략
- 조세피난처
- arm
- python
- 애플
- 데이터베이스
- 야구
- 인공지능
- 김경문
- NC 다이노스
- 손민한
- 뉴스타파
- 안드로이드
- mysql
- Linux
- 블로그
- 우분투
- 타이젠
- 국정원
- Today
- Total
꿈꾸는 사람.
ER 다이어그램. Relation으로 사상(Mapping) 본문
1. 개체-관계 다이어그램(Entity-Relationship Diagram)이란
Entity-Relationship Modeling(ERM)을 통해 개체(사물), 관계, 속성 등을 도식화한 표현체인 ERM의 산출물이다.
위의 ER 다이어그램으로는 복잡한 현실 세계를 표현하기에 충분하지 않다.
대용량 데이터, GIS, Multimedia, 객체 지향 등 대용량 표현에 한계가 있으며
재사용, 상속과 확장성의 개념 등이 없다.
이들을 해결하기 위해 Extended ER 모델로 발전하게 된다.
전문화(specialization), 일반화(generalization), 집단화(aggregation) 등의 모델을 추가하여
확장된 개체-관계 모델(Extended E-R Model, EER)이 개발되었다.
2. Entity-Relationship Model 작성 절차
1. Entity 도출 |
명사형, 집합형을 이루고 대표성을 갖는 Entity 도출 예) 학생, 학과, 교수 |
2. Relationship 도출 |
Entity와 entity 간의 관계 도출 예) 학생은 학과에 소속된다. |
3. Attribute 도출 |
Entity의 상세 속성 도출 예) 학생 = {학번, 이름, 학과, ...} |
4. Cardinality 도출 |
두 Entity 간의 관계에서 참여자의 수를 비율로 표시 예) 1 : 1, 1 : N, N : M |
5. 식별자 도출 | 기본키, 외래키, 수퍼키, 후보키, 대체키 등에 대한 정의 |
6. 정규화 | 1차, 2차, 3차, BCNF, 4차, 5차 정규화 |
7. 통합/분할 | Entity type의 성격에 따라 통합, 분할 수행 |
8. Data 모델 검증 | Entity type 속성 관계 등에 대한 적합성 검증 |
3. 사상(Mapping)
이런 개념적 모델을 컴퓨터가 이해할 수 있는 논리적 데이터 모델(logical data model)로 변환하여야 한다.
매핑의 내용을 아래 표와 같이 정리한다.
E-R 모델 |
관계형 모델 |
|
개체 타입 |
릴레이션 |
|
속성 |
단순속성 |
속성 |
복합속성 |
단순 속성들의 집합 |
|
키 속성 |
기본키 또는 보조키 |
|
속성값의 집합 |
도메인 |
|
관계 |
이진 관계성 (Binary Relationship) |
|
일대일(1:1) 관계 |
||
1:1 양방향 의무적 참여 |
두 관계를 하나로 통합. 기본키는 통합되기 전의 두 관계의 기본키 중 어느 한쪽. |
|
1:1 한쪽은 선택적, 다른 한 쪽은 의무적 참여 |
선택적 측 관계의 기본키를 의무적 측에 외래키로 포함. |
|
1:1 양쪽 모두 선택적 참여 |
기존 두 관계의 기본키로 구성되는 새로운 관계 생성. |
|
일대다(1:N) 관계 |
||
N측 의무적 참여 |
1측의 PK를 N측의 FK로 설정 |
|
N측 선택적 참여 |
- 두 관계의 PK로 구성된 새로운 관계를 생성. - 새 관계의 PK는 다측 관계의 기본키. |
|
M:N 관계 |
- 두 릴레이션의 PK로 구성된 릴레이션을 생성. - 새로운 릴레이션의 PK는 두 릴레이션의 PK를 결합하여 사용한다. - 복합키를 구성. |
|
순환 관계성 |
||
일대다(1:N) 관계 |
- 다측이 의무적 관계일
경우 일측 관계의 기본키를 다측 관계의 외래키로 포함. |
|
M:N 관계 |
기존 두 관계의 기본키로 구성되는 새로운 관계를 생성하며, 새로운 릴레이션의 기본키로는 다측의 기본키를 사용. |
|
특수 속성/개체 |
약한 개체 타입 |
강한 개체타입의 기본키와 약한 개체타입의 부분키(partial key)로 식별. |
복합 속성 |
- 복합속성의 개개 속성이
중요한 의미를 가지는 경우에는 나누어서 표현. |
|
다중값 속성 |
1. 새로운 릴레이션을 생성. 2. 생성된 릴레이션을 다중값 속성과 원래 릴레이션의 기본키 값으로 구성. 3. 원래 릴레이션에서 다중값 속성이 빠진다. |
'정보시스템감리사 > Database' 카테고리의 다른 글
[데이터마이닝] 의사결정나무(Decision Tree Analysis) (0) | 2017.12.27 |
---|---|
[2016년][공무원 7급][데이터베이스] 기출 풀이. (0) | 2017.04.27 |
[정보시스템감리사][데이터베이스][2012년 기출풀이]BCNF정규형 (0) | 2017.01.25 |
[정보시스템감리사][데이터베이스][기출풀이] 2010년] 트랜잭션 개요 (0) | 2017.01.10 |