인용하는 그림은 다양한 곳에서 가져왔음을 밝힙니다
Ch 11. ER모델
Section 1. ER모델의 개념
- 개념적 데이터 모델의 대표적인 것
- 개체 집합, 속성 집합, 개체 집합 간의 관계 집합을 표현한 것
1.1 집합과 원소
- 집합(set) : 조건에 의해 대상이 분명한 것들의 모임
- 원소(element) : 집합의 구성 요소
1.2 ER모델
- 개체(entity)와 그들 간의 관계(relation-ship)을 이용해 현실세계를 개념적 구조로 표현하는 방법
- 개체간의 관계를 ERD(Entity-Relationship Diagram)으로 타난 낸다.
- 개체(직사각형), 속성(타원), 관계(마름모) 3개의 도형으로 표현된다.
Section 2. ER모델의 구성 요소
2.1 개체
- 물리적으로 혹은 추상적/개념적으로 존재하는 실체
- 개체는 독립적으로 존재하며 서로 구별되는 특성을 가지고 있다.
- 다른 개체와 구별되는 이름을 가지며, 특성을 타나내는 속성을 하나 이상 가지고 있다.
- 개체 인스턴스(entity instance), 개체 어커런스(occurrence)란 실체화된 개체를 말한다.
용어 | 의미 | 관계 모델 |
---|---|---|
개체 타입 | 동일한 속성들을 가진 개체 인스턴스들의 틀 | 릴레이션의 내포 |
개체 집합 | 동일한 속성들을 가진 개체 인스턴스들의 모음 | 릴레이션의 외면 |
개체 인스턴스 | 개체 타입을 구성하는 속성들이 실제 값을 가진 것 | 데이터 |
개체 발생시점에 따른 분류
기본 개체 : 원래 업무에 존재하는 정보, 다른 개체의 부모 역할을 한다.
중심 개체 : 기본 개체에서 바생하고 데이터 양이 많다. 해당 업무에서 중심적인 역할을 한다. 다른 개체와의 관계를 통해 행위 개체를 생성한다.
행위 게체 : 두 개 이상의 부모 개체에서 발생되고, 내용이 빈번하게 변경되거나 데이터 양이 증가한다. 분석 초기에는 잘 나타나지 않으며, 상세 설계 단계를 거치면서
찾아 내곤 한다약한 개체 타입(두줄 직사각형)
강한 개체 타입(strong entity type) : 다른 개체의 도움없이 독자적으로 존재. 개체 타입 내에서 자신의 존재를 결정하는 속성을 가진다.
약한 개체 타입(weak entity type) : 독자적으로 존재할 수 없고, 상위 개체 타입을 가진다. 하나 이상의 부모 개체에서 물려 받은 속성으로 자신의 존재 여부를 결정한다.
2.2 속성
- 속성(attribute) : 개체의 특성이나 상태를 구체적으로 기술
- 타원으로 표시하며 개체 타입에 실선으로 연결
- 식별자(identifier) : 개체 인스턴스를 구별할 수 있는 속성, 속성에 밑줄로 표시
- 설명자(descriptor) : 개체에 대한 설명
- 복합 속성 : 독립적인 의미를 가진 여러 개의 기본적인 단순 속성으로 분해할 수 있는 속성. 예)성명 -> 성, 이름
- 다중값 속성 : 여러개의 속성값을 가지는 속성. 두줄 타원으료 표시. 예)연락처, 취미
- 유도 속성 : 다른 속성이나 개체가 가지고 있는 값으로 유도되어 결정되는 속성 값. 유도 속성을 만드는데 사용된 속성을 저장 속성(stored attribute). 점선으로 연결
2.3 관계
- 관계 : 개체와 개체가 맺고 있는 의미 있는 연관성
- 존재에 의한 관계는 기본 개체 사이에 주로 형성된다
- 행위에 의한 관계는 주로 중심, 행위 개체로부터 발생
- 개체 타입 사이에 실선으로 연결해 마름표로 표시
실체화된 관계 타입 : 관계 인스턴스
관계 인스턴의 모임 관계 집합
관계의 차수 특성
특정 관계에 연결된 개체의 수
3차 이상은 DB구축을 수월하게 하기위해 2차로 바꾸는 것이 일반적이다
관계의 cardinality 특성
하나의 관계에 실제로 참여할 수 있는 인스턴스의 수
1:1 주문-배송, 1:M 출판사-도서, M:N 주문-도서
관계의 참여 제약 조건 특성 existence
mandatory : 모든 개체 인스턴스가 관계에 참여
optional : 일부 인스턴스가 참여
Section 3. 다양한 ER모델 표기법
- 첸 표기법
- IE(Information Engineering) 표기법
- 바커(Barker) 표기법