본문 바로가기
Department/Database

데이터베이스 개념적 데이터 모델_개체-관계 모델 (1)

by mean. 2020. 7. 14.
728x90
반응형

데이터모델(리뷰)
: 데이터 모델링의 결과물 ( 혹은 데이터 모델링의 결과물을 표현하는 도구, 방법 )
▣ 데이터모델의분류
◈ 개념적 데이터 모델(conceptual data model) 예: 개체-관계(ER: Entity-Relationship) 데이터모델
◈ 논리적 데이터 모델(logical data model)
◈ 물리적 데이터 모델(physical data model)

ER 모델 개념
▣ ER(Entity Relationship) 모델 - 개체 관계
◈ 데이터베이스 설계를 용이하게 하기 위해서 피터 첸(Peter Chen)이 제안
◈ 개념적 설계를 위한 인기 있는 모델 (말로 된 경우 애매모호하기 때문에 이를 위해 그림으로 표현 )
◈ 최종 결과물 : ER 다이어그램 - 개념적 모델링 결과를 표준화된 그림으로 표현
◈ ER 모델의 구성 요소
- 개체 혹은 엔티티(Entity)
- 관계 (Relationship) - real 관계 ex) 친구관계

개체(entity)
▣ 사람, 사물, 개념, 사건과 같이독립적으로 존재하면서 고유하게 식별이 가능한 실세계의 객체
◈ 사람처럼 실체가 있는 것도 있지만, 생각이나 개념과 같이 추상적인 것도 있음
▣ 저장할 가치가 있는 중요 데이터를 가지고 있는 사람이나 사물, 개념, 사건 등
▣ 다른 개체와 구별되는 이름을 가지고 있고, 각 개체만의 고유한 특성이나 상태, 즉 속성을 무조건 1개 이상 가지고 있음
▣ ER 다이어그램 표기법 : 직사각형

예제 01.

entity


개체인스턴스, 개체타입, 개체집합
▣ 개체타입(entity type)
◈ 개체를 고유의 이름과 속성들로 정의한 것
◈ 동일한 속성들을 가진 개체들의 틀(구조)

▣ 개체 인스턴스(entity instance)
◈ 개체를 구성하고 있는 속성이 실제 값을 가짐으로써 실체화된 개체
◈ 개체 어커런스(entity occurrence)라고도 함

▣ 개체집합(entity set)
◈ 특정 개체 타입에 대한 개체 인스턴스들을 모아놓은 것

Example


속성(attribute) - 0개 여도 가능하다. (option)
: 개체나 관계가 가지고 있는 고유의 특성 - 관계형 모델의 속성과 흡사
▣ 하나의 개체는 연관된 속성들의 집합으로 설명됨
◈ 예: 고객 (고객아이디, 주소, 연락처, 적립금)
▣ 한 속성의 도메인(domain)은 그 속성이 가질 수 있는 모든 가능한 값들의 집합을 의미
◈ 예: 적립금은 숫자형 값을 가짐
▣ 여러 속성이 동일한 도메인을 공유할 수 있음
◈ 예: 고객아이디와 주소는 문자형 값을 가짐
▣ 키 속성은 한 속성 또는 속성들의 모임으로서 한 개체 타입 내에서 각 개체를 고유하게 식별함
▣ ER 다이어그램표기법
◈ 속성은 타원형으로 나타냄
◈ 속성은 개체와 실선으로 연결
◈ 기본 키에 속하는 속성은 밑줄을 그어 표시함


속성의 분류


속성의분류: 속성값의개수(단일값.vs.다중값)
(관계형 모델에서는 무조건 단일값, But ER model에서는 다중 값도 지원)
▣ 단일값 속성(single-valued attribute)
◈ 1개의 값을 가지는 속성 -> 원자성
◈ 대부분의 속성은 단일 값 속성
◈ ER 다이어그램: 실선 타원으로 표현
▣ 다중값 속성(multi-valued attribute)
◈ 여러 개의 값을 가질 수 있는 속성
◈ ER 다이어그램: 이중선 타원으로 표현
◈ 예
‘고객’ 개체의 ‘연락처’ 속성( 집 전화번호와 휴대폰 번호 등 값을 여러 개 가질 수 있음 )
‘책’ 개체의 ‘저자’ 속성 ( 책의 저자가 여러 명일 수 있음 )


속성의분류: 의미의분해가능성(단순.vs.복합)
▣ 단순 속성(simple attribute)
◈ 의미를 분해할 수 없는 속성
◈ 대부분의 속성은 단순 속성
◈ ER 다이어그램: 실선 타원으로 표현
▣ 복합 속성(composite attribube)
◈ 의미를 분해할 수 있는 속성
◈ ER 다이어그램: 큰 타원 아래 작은 타원으로 연결
◈ 예) ‘고객’ 개체의 ‘생년월일’ 속성: 년, 월, 일로 세분화
‘고객’ 개체의 ‘주소’ 속성: 도, 시, 동 등으로 세분화


속성의 분류: 기존 속성값에서 유도 (저장.vs.유도)
▣ 저장 속성(stored attribute)
◈ 다른 속성의 값으로부터 얻어질 수 없는 속성
◈ 대부분의 속성은 저장 속성
◈ ER 다이어그램: 실선 타원으로 표현
▣ 유도속성(derived attribute) - 굳이 저장하지 않아도 ‘가격’, ‘할인율’에 의해 유도되어 결정된다.
◈ 다른 속성의 값으로부터 유도되어 결정되는 속성
◈ ER 다이어그램: 점선 타원으로 표현
예) ‘고객’ 개체의‘나이’ 속성(‘출생년도’ 속성으로부터 계산)
‘책’ 개체의‘판매가격’ 속성(‘가격’ 과 ‘할인율’ 속성으로부터 계산)


다중, 복합, 유도는 객체-관계 모델에 존재 하지 않는다.


관계(relationship)
▣ 개체들 사이에 맺고 있는 연관이나 연결
▣ 개체들 사이의 대응 관계, 즉 매핑(mapping)을 의미
▣ ER 다이어그램 표기법: 마름모
◈ 서로 연관된 개체들을 관계에 실선으로 연결함

관계인스턴스, 관계타입, 관계집합
▣ 관계 인스턴스(relationship)
◈ 개체 인스턴스들간에 맺어진 연관
▣ 관계 타입(relationship type)
◈ 개체 타입과 개체 타입 간의 연결 가능한 관계를 정의한 것(동질의 관계들의 틀)
▣ 관계 집합(relationship set)
◈ 동질의 관계 인스턴스들의 집합

Example

관계 : Example


관계 : 속성을 가질 수 있다.

▣ 관계의 속성
◈ 관계는 관계의 특징을 기술하는 속성들을 가질 수 있음
◈ “설명속성(descriptive attributes)” 으로 부름 - 관계를 맺음으로써, 결정되는 것들을 나눌 수 있다.

관계의 유형 : 관계 차수(degree)
: 관계에 참여하는 개체 타입의 수


관계의 유형: 매핑 카디널리티(mapping cardinality) - 현실 세계의 관계를 좀 더 구체화시켜서 표현.
▣ 매핑 카디널리티 (관계 대응 수)
◈ 관계를 맺는 개체 타입에서, 각 개체 인스턴스가 연관성을 맺고 있는 상대 개체 타입의 개체 인스턴스 개수
▣ 매핑 카디널리티에 따른 관계 타입의 유형

▣ 일대일(1:1)관계
◈ 개체 A의 각 개체 인스턴스가 개체 B의 개체 인스턴스 하나와 관계를 맺을 수 있고, 개체 B의 각 개체 인스턴스도 개체 A의 개체 인스턴스 하나와 관계를 맺을 수 있음 (A와 B 내 각 개체 인스턴스들 중 관계를 맺지 않는 경우도 허용됨)

▣ 일대다(1:n), 다대일(n:1) 관계
◈개체 A의 각 개체 인스턴스가 개체 B의 개체 인스턴스 여러 개와 관계를 맺을 수 있지만, 개체B의 각 개체 인스턴스는
개체 A의 개체 인스턴스 하나와 관계를 맺을 수 있음 (A와B 내 각 개체 인스턴스들 중 관계를 맺지 않는 경우도 허용됨)

 


부서입장에서는 일대다사원입장에서는 다대일

▣ 다대다(n:m) 관계
◈ 개체 A의 각 개체 인스턴스가 개체 B의 개체 인스턴스 여러 개와 관계를 맺을 수 있고,
개체 B의 각 개체 인스턴스도 개체 A의 개체 인스턴스 여러 개와 관계를 맺을 수 있음 (A와B내 각 개체 인스턴스들 중 관계를 맺지 않는 경우도 허용됨)

 


Q1. 개체 타입을 추출하시오. (2개 ~ 3개 정도만)

Q2. Q1에서 추출한 개체타입의 속성을 추출하시오.
이때 ‘다중값속성, 복합속성, 유도속성’중 어느 1개의 유형에 속하는 속성이 반드시 있어야한다.
(개체타입당 해당 유형에 속하는 속성이 1개이상 있어야 한느것은 아님. 즉 추출한 모든 개체 타입의 모든 속성중 해당 유형에 속하는 속성이 1개 이상 있으면 됨)

Q3. Q2에서 추출한 속성 중 ‘다중값속성, 복합속성, 유도속성’중 어느 한 개의 유형에 속하는 속성을 쓰시오.

LAB2. ER다이어그램 작성
∙ 도서 정보로 도서번호(고유함), 도서이름을 기억한다.
∙ 고객 정보로 고객번호(고유함), 고객이름, 주소, 관심분야를 기록한다. 이 때, 관심분야는 여러 개일 수 있고, 주소는 시,구,동으로 세분하여 나타낸다.
∙ 출판사 정보로 출판사 이름(고유함),대표자 이름을 기록한다.
∙ 고객은 도서를 주문한다. 이 때, 각 고객은 여러 개의 도서를 주문할 수 있고, 각 도서도 여러 명의 고객에 의해 주문될 수 있다.
∙ 서점은 출판사에서 도서를 공급받는다. 이 때, 한 개의 출판사는 여러 개의 도서를 공급할 수 있지만, 각 도서의 출판사는 1개로 제한된다.

 

728x90
반응형