[Database] 데이터베이스 설계 - 요구사항 수집과 분석, 개념적 설계, 논리적
목차
1. ER 모델이란
(1) ER 모델
P.P.Chen이 ER 모델을 제안했으며, 의미적으로 풍부한 데이터 모델을 제공하는 것이 목표였다.
개념들을 그래픽 하게 나타낼 수 있으며, 한 조직의 개념적 스키마를 설명하기 위해 사용된다.
ER 모델은 실세계를 엔티티, 애트리뷰트, 엔티티들 간의 관계로 표현한다.
ER 다이어그램은 엔티티 타입, 관계 타입, 이들의 애트리뷰트들을 그래픽 하게 표현한 것이다.
(2) 엔티티 ( Entity)
하나의 엔티티는 사람, 장소, 사물, 사건 등과 같이 독립적으로 존재하면서 고유하게 식별이 가능한 실세계의 객체이다.
(2-2) 엔티티 타입
엔티티들은 엔티티 타입으로 분류된다.
엔티티 집합은 동일한 애트리뷰트들을 가진 엔티티들의 모임이다.
(ex, 한 회사의 모든 사원들은 사원 엔티티 집합을 이룬다.)
엔티티 타입은 동일한 애트리뷰트들을 가진 엔티티들의 틀이다.
하나의 엔티티는 한 개 이상의 엔티티 집합에 속할 수 있다.
(2-3) 강한 엔티티 타입과 약한 엔티티 타입
강한 엔티티 타입이란,
독자적으로 존재하며 엔티티 타입 내에서 자신의 키 애트리뷰트(PK)를 사용하여 고유하게 엔티티들을 식별할 수 있는 엔티티 타입을 의미합니다. (강한, 정규, 소유, 식별 엔티티 타입이라고도 부릅니다.)
약한 엔티티 타입이란,
키를 형성하기에 충분한 애트리뷰트들을 갖지 못한 엔티티 타입입니다.
이 엔티티가 존재하기 위해서는 소유 엔티티 타입이 있어야 하며, 소유 엔티티 타입의 키 애트리뷰트를 결합해야만 고유하게 약한 엔티티 타입의 엔티티들을 식별할 수 있습니다.
DEPENDENT 엔티티는 약한 엔티티 타입이다.
왜냐하면, 부양가족 엔티티의 이름 속성 만으로는 고유하게 식별을 할 수 없으므로 (동명이인) EMPLOYEE의 사원 번호(pk) 속성과 함께 쓰여야 식별할 수 있다.
(3) 애트리뷰트 (Attribute)
하나의 엔티티는 연관된 애트리뷰트들의 집합으로 설명된다. ( 애트리뷰트들이 모여 엔티티를 설명한다고 할 수 있다.)
한 애트리뷰트의 도메인은 그 애트리뷰트가 가질 수 있는 모든 가능한 값들의 집합을 의미한다.
한 엔티티 타입 내의 엔티티들은 서로 식별이 가능해야 한다.
(3-2) 단순 애트리뷰트
더 이상 다른 애트리뷰트로 나눌 수 없는 애트리뷰트이다.
(3-3) 복합 애트리뷰트
두 개 이상의 애트리뷰트로 이루어진 애트리뷰트이다.
동일한 엔티티 타입에 속하는 애트리뷰트들 중에서 밀접하게 연관된 것을 모아놓은 것이다. (ex, 주소 - 시/구/동 )
(3-4) 단일 값 애트리뷰트
각 엔티티마다 정확하게 하나의 값을 갖는 애트리뷰트이다. (ex, 사원번호, ID )
(3-5) 다치 애트리뷰트
각 엔티티마다 여러 개의 값을 가질 수 있는 애트리뷰트이다.
(3-6) 저장된 애트리뷰트
다른 애트리뷰트와 독립적으로 존재하는 애트리뷰트이다.
ER 다이어그램에서 대부분의 애트리뷰트는 저장된 애트리뷰트이다.
(3-7) 유도된 애트리뷰트
다른 애트리뷰트의 값으로부터 얻어진 애트리뷰트이다. (ex, 주민등록번호로 나이를 유추할 수 있다.)
'CS > Database' 카테고리의 다른 글
[DB] 데이터베이스 논리적 설계 - ER - 관계모델의 릴레이션으로 사상 (0) | 2022.09.28 |
---|---|
[DB] 데이터베이스 ER모델(2) - 관계와 관계 타입 / 전체 참여, 부분참여, 다중 관계, 순환적 관계란 (0) | 2022.09.27 |
[DB] 데이터베이스 설계 - 요구사항 수집과 분석, 개념적 설계, 논리적 설계, 물리적 설계 (0) | 2022.09.26 |
[DB] 데이터 베이스 무결성 제약조건 유지 - 삽입, 삭제, 수정 (0) | 2022.09.11 |
[DB] 데이터 베이스 무결성 제약조건 : 도메인,키,기본키,엔티티,참조 무결성 제약조건 알아보기 (0) | 2022.09.10 |