본문 바로가기
프로그래밍/컴알못 공부

컴알못의 데이터베이스 공부 (E-R 모델)

by Lihano 2022. 1. 8.
반응형

E-R 모델

현실 세계의 데이터를 표현하기 위해서 E-R 모델을 사용합니다.

현실 세계의 데이터를 컴퓨터에 어떻게 저장하고 사람이 어떻게 이해를 할 수 있을지 중재하는 일종의 인터페이스.

실세계의 대상을 간단한 기호만으로 표현할 수 있습니다.

 

구성요소

E-R 모델은 개체, 관계, 속성, 링크로 이루어져 있습니다.

개체

개체란 말그대로 현실세계의 저장 대상이 되는 하나의 개체를 의미합니다.

그건 사람이 될 수도, 자동차가 될 수도, 날씨가 될 수도 있습니다.

 

E-R 다이어그램에서 개체는 사각형으로 표시합니다.

그리고 개체는 속성으로 이루어져있습니다.

 

개체 인스턴스 : 현실에서 저장 대상이 되는 존재 하나하나.

개체 집합 : 공통된 속성을 갖는 개체들의 집합

개체 타입 : 같은 속성을 갖는 개체 집합의 추상적 표현

 

속성

속성은 개체 안에 포함되는 종속적 개념으로 가장 작은 정보 단위입니다.

속성은 타원형 기호로 표시합니다.

 

속성은 여러 유형이 존재합니다.

  • 단일 값과 다중값 속성 : 단일값 속성은 특정 속성이 갖는 값이 하나. 다중값 속성은 특정 속성이 갖는 값이 여러개.
  • 단순 속성과 복합 속성 : 단순 속성은 의미적으로 더이상 분해할 수 없는 속성. 복합 속성은 둘 이상의 속성으로 이루어진 속성.
  • 저장 속성과 유도 속성 : 저장 속성은 실제 값을 저장하는 속성. 유도 속성은 값을 저장하지 않아도 다른 속성 값에서 계산되거나 유도되는 속성.

그리고 그 외에 개체를 유일하게 식별할 수 있는 키 속성이 있습니다.

 

관계

관계란 개체 사이에 맺어지는 연관성을 의미.

관계는 관계 이름과 필요한 속성들로 정의됩니다.

관계의 속성은 개체들이 관계를 맺음으로서 발생하는 특성 정보를 나타냅니다.

E-R 모델에서 관계는 마름모 기호로 표현합니다.

 

개체 간에는 수많은 관계가 존재할 수 있습니다.

맺어질 수 있는 관계야 무한하겠지만 우리가 E-R 모델에 표현할 수 있는 관계의 유형은 제한적입니다.

우선 관계의 유형은 관계 카디널리티로 분류됩니다.

개체 집합들이 관계를 맺을 때 개체의 인스턴스들이 서로 사상되는 수로 관계는 분류됩니다.

 

1 : 1

두 개체가 서로 오직 하나의 개체와만 사상.

1:n & n:1

한 개체는 여러 개체와 고나계를 맺을 수 있지만 상대 개체는 많아야 하나의 개체와만 관계.

n : n

두 개체가 서로 여러 개체와 관계.

 

최소 사상수란 두 개체의 관계에서 실제 참여하는 상대 개체의 최솟값입니다.

최소 사상수가 1이라면 그건 모든 개체가 적어도 하나의 개체와 관계를 맺고 있다는 뜻입니다.

하지만 최소 사상수가 0이라면 모든 개체가 아니라 부분 부분 관계를 맺고 있다는 뜻입니다.

 

그리고 관계의 유형은 관계 차수로도 분류될 수 있습니다.

관계 차수란 관계에 참여하는 개체의 수를 말합니다.

 

1진 관계

순환 관계라고도 하며, 개체가 자기 자신과 스스로 맺는 관계.

2진 관계

차수가 2인 가장 일반적인 관계 유형. 두개의 개체가 서로 맺는 관계.

3진 관계

3개의 개체가 함께 맺는 관계

 

그리고 마지막으로 관계 유형은 관계의 종속성으로 분류가능합니다.

 

비식별 관계

독립적인 두 개체가 대등한 관계를 맺는 경우.

대부분의 관계는 비식별 관계이며 마름모로 표현.

식별 관계

두 개체가 종속적인 관계를 맺는 경우.

어느 한 개체가 다른 개체의 존재 여부에 의존적일 경우를 말합니다.

이 경우를 존재 종속이라고도 부르며, 존재 종속인 관계를 식별 관계라고 하며 이중 실선 마름모로 표현합니다.

일반화 관계

개체 사이의 상하관계를 가질 경우.

일반환 관계는 IS-A 관계라고도 부르며 역삼각형으로 표시하여, 위로는 상위 개체,  아래로는 하위 개체를 표시합니다.

상위 개체는 하위 개체들이 가지는 공통 속성을 표현.

하위 개체는 공통 속성 이외에 추가로 갖는 고유 속성을 표현.

 

반응형

댓글