본문 바로가기
2022/DB 데이터베이스

[DB] E-R 모델

by Or0i쿠 2022. 11. 24.
 
Sour Grapes
아티스트
LE SSERAFIM (르세라핌)
앨범
FEARLESS
발매일
1970.01.01
더보기
  1. E-R 모델
  2. E-R 다이어그램
  • E-R 모델의 기본 개념을 이해한다.
  • 개체, 속성, 관계의 유형을 살펴본다.
  • E-R 다이아그램 표기법을 이해하고 작성 방법을 알아본다.

E-R 모델

개체-관계 모델(Entity-Relationship model) 또는 E-R 모델
  • 1976년 피터 첸(Peter Chen)이 처음 제안
  • 현실 세계를 개체와 관계를 이용하여 개념 구조로 표현하는 대표적 개념적 모델링 방법
  • E-R 다이아그램(diagram)이라는 그래픽 기호로 표현하여 쉽게 이해할 수 있음
E-R 다이아그램 의구성 요소
  • 기본적으로 개체를 표현하는 사각형
  • 관계를 나타내는 마름모 
  • 개체나 관계의 속성을 표현하는 타원
  • 그리고 이들을 연결하는 링크(link)



개체

E-R 다이아그램에서 현실 세계를 모델링하는 가장 중요한 요소
개체(entity)
  • 현실 세계에서 저장할 가치가 있는 데이터와 관련된 독립적 존재를 의미
  • 사람(학생, 교수 등), 사물(컴퓨터, 도서 등), 장소(강의실, 주차장 등)와 같은 물리적 존 재뿐만 아니라 추상적 개념(과목, 학과) 등이 해당
  • 개체는 개체의 특성을 나타내는 속성에 의해 구별
데이터베이스 관점에서는 각 개체 정보의 저장 구조를 구성하는 것이 중요하므로 개체의 공통된 특성을 모아 구조를 정의
E-R 다이아그램에서 사각형 기호로 표시
  • 다른 개체와 구별되는 고유한 개체 이름과 하나 이상의 속성으로 정의
  • 개체의 속성은 개체 고유의 특성이나 상태 정보를 표현
  • 사각형 안에 개체 이름을 표기, 속성은 타원형 기호로 표시하여 사각형에 링크로 연결

 

개체와 개체 타입, 개체 집합

개체와 개체 타입,
개체 집합의 차이점
개념 데이터 모델링 과정에서 개체(entity)와 개체 타입(entity type), 개체 집합(entity set) 3가지 용어는 비슷하지만 개념적으로 다름



개체와 개체 타입, 개체 집합의 예

속성(attribute)

  • 개체 또는 관계가 갖는 고유한 특성 
  • 스스로 존재할 수는 없는 종속적 개념
  • 개체나 관계와 연결되어 가장 작은 정보 단위로서 중요한 의미를 표현
  • 타원형 기호로 표현하며 타원 안에 고유한 속성 이름을 표기, 직사각형이나 마름모 기호 와 실선으로 연결속성(attribute)

속성 유형

1) 단일 값 속성과 다중 값 속성
  • 특정 속성이 갖는 값이 하나이면 단일 값 속성(single-valued attribute)
  • 만약 개체가 갖는 속성 값이 여러 개이면 다중 값 속성(multivalued attribute)
2) 단순 속성과 복합 속성
  • 단순 속성(simple attribute): 의미적으로 더 이상 분해할 수 없는 속성 (기본 속성으로 대부분의 속성이 이에 속함)
  • 복합 속성(composite attribute): 둘 이상의 속성으로 이루어져 의미적으로 더 작은 단위 로 분해가 가능한 속성 (타원 모양의 상위 속성과 하위 속성을 실선 링크로 연결 -단순 속성은 의미가 하나이지만 복합 속성은 여러 의미를 포함
3) 저장 속성과 유도 속성
  • 저장 속성(stored attribute): 실제 값을 저장하는 속성
  • 유도 속성(derived attribute): 값을 저장하지 않아도 다른 속성 값에서 계산되거나 유도 될 수 있는 속성
4) 키 속성
  • 키 속성(key attribute): 각 개체를 유일하게 식별할 수 있는 고유한 값을 갖는 속성

 

속성의 종류


관계

관계(relationship)
  • 개체와 개체 사이에 맺어지는 연관성을 의미
  • 주로 저장 가치가 있는 데이터를 발생시키는 의미 있는 연관성을 표현
  • 관계는 개체 없이는 존재할 수 없는 종속적 존재 
  • 거래(등록, 구매, 예약 등), 행위(치료, 상담, 수강 등), 신분(소속, 관리 등)과 같은 물리 적, 추상적 개념들이 해당
  • ‘관계성’이라고도 하며 관계 이름과 필요한 속성들로 정의
E-R 다이아그램에서 마름모 기호로 표시
  • 보통 둘 이상의 개체와 실선으로 연결
  • 관계의 속성은 각 관계를 맺음으로써 발생하는 특성 정보를 표현
  • 마름모 기호 안에 관계 이름(정확하게는 관계 타입)을 표기하고 타원형 기호로 표시되는 속성을 마름모에 실선으로 연결

관계와 관계 타입, 관계 집합

관계
  • 특정 개체와 개체 사이에 맺어지는 하나의 연관성을 의미
관계 집합
  • 개체 집합과 개체 집합 사이에 실제로 맺어지는 모든 관계 인스턴스를 의미
관계 타입
  • 개체 타입과 개체 타입 사이에 성립할 수 있는 모든 관계를 총체적으로 추상화하여 표현
  • 개체 타입의 모든 인스턴스들, 즉 개체 집합 사이의 사상을 의미
관계와 관계 타입, 관계 집합의 예

관계의 종류

관계의 종류
분류기준1: 관계 카디널리티(relationship cardinality)
  • 관계를 맺는 두 개체 집합 간의 사상(mapping) 형태를 정의
  • 두 개체 집합이 서로 관계를 맺을 때 각 개체 인스턴스에 사상되는 상대 개체 인스턴 스의 개수가 기준이 됨
분류기준2: 관계 차수(relation degree) 
  • 관계에 참여하는 개체의 수
분류기준3: 관계의 종속성

 

분류기준1: 관계 카디널리티(relationship cardinality)

1) 최대 사상 수
  • 특정 개체와의 관계에 실제 참여하는 상대 개체의 수 중에서 최대값을 표현 
  • 최대값은 1 또는 다수(many)를 의미하는 m(혹은 n)으로 표기
  • 일대일(1:1) -두 개체가 서로 오직 하나의 개체와만 관계를 맺을 수 있다면 일대일 관계

일대다(1:n)
한 개체는 여러 개체와 관계를 맺을 수 있지만 상대 개체는 많아야 하나의 개체와만 관계를 맺을 수 있다면 일대다 관계
다대일(n:1)
한 개체는 최대 하나의 개체와 관계를 맺을 수 있지만 상대 개체는 여러 개체와 관계 를 맺을 수 있다면 다대일 관계
다대다(m:n)

두 개체가 서로 여러 개체와 관계를 맺을 수 있다면 다대다 관계

분류기준1: 관계 카디널리티(relationship cardinality)

2) 최소 사상 수 특정 개체와의 관계에 실제 참여하는 상대 개체의 수 중에서 최소값을 표현
최소값 1인 경우(전체 참여)
  • 만약 개체가 적어도 하나 이상의 개체와 반드시 관계를 맺어야 한다면 최소 사상 수는 1
최소값 0인 경우(부분 참여)
  • 만약 개체가 다른 개체와 관계를 맺을 수도 혹은 맺지 않을 수도 있다면 최소 사상 수는 0

분류기준2: 관계 차수(relation degree) 

1진 관계 또는 순환(recursive) 관계
  • 차수가 1이며 개체가 자기 자신과 스스로 맺는 관계
2진 관계
  • 차수가 2인 가장 일반적인 관계 유형이다. 두 개의 개체가 서로 맺는 관계
3진 관계
  • 3개의 개체가 함께 맺는 관계

분류기준3: 관계의 종속성

1) 비식별 관계와 식별 관계
  • 비식별 관계 (non-identifying relationship) -보통 독립적인 두 개체가 대등한 관계를 맺을 때 실선 마름모로 표시 
  • 식별 관계(identifying relationship) -두 개체가 대등한 관계가 아닌 종속적 관계를 맺는 경우 이중 실선 마름모로 표시
2) 일반화(generalization) 관계
  • 개체 사이의 상하 관계
  • ‘IS-A 관계’라고도 하며 역삼각형으로 표현
  • 역삼각형 위로는 상위 개체(supertype entity)를, 아래에는 하위 개체(subtype entity)를 실선으로 연결(상위 개체는 하위 개체들이 공통으로 갖는 속성을 표현 -하위 개체는 공통 속성 이외에 추가로 갖는 고유 속성만을 표현 -상위 개체의 속성 중에 구별자(discriminator) 역할의 속성을 포함)


E-R 다이아그램

표기법 요약

 

E-R 다이아그램의 표기 예