강의와 도서/핵심 데이터 모델링

1. 데이터 모델링 이론 | 데이터 모델링, ER 모델 구성 요소, 관계형 데이터 모델 이론

Tech_JINI 2025. 2. 17. 18:14

1. 데이터 모델링이란 

모델: 작품을 만들기 전에 미리 만든 물건

 

ER 모델(Entity-Relationship Model)

: 개체와 개체 간의 관계를 ER표기법을 사용하여 표현

* ERD(Entity-Relationship Diagram)은 ER모델에서 사용하는 실체와 관계를 도식화한 것

 

ER 모델의 질적 특성

- 완전성

- 정확성

- 최소성

- 자명성

- 확장성

 

2. ER 모델 구성 요소

: 엔티티, 관계, 속성

 

 

엔티티(Entity) 

iv 집합, 그룹

: 현실세계에 실제로 존재하는 실체(고객, 상품, 직원,,)이거나 개념적인 것(조직, 서비스, 직업..)

 

엔티티는 슈퍼타입 엔티티나 서브타입 엔티티로 확장할 수 있다.

 

슈퍼타입 엔티티: 하나 이상의 서브타입 엔티티와 관계된 일반화된 엔티티, 서브타입에 공통으로 존재하는 속성 관리

서브타입 엔티티: 서브타입에만 존재하는 고유한 속성 관리

 

일반화 : 엔티티의 일반화는 엔티티 각각이 가지고 있는 고유한 특징을 일반화하여 공통의 속성으로 재정의한 것

 

상위 수준의 엔티티와 하위 수준의 엔티티를 일반화하여 표현할 수도 있다. 

 

엔티티 관계에 따라 강한 엔티티와 약한 엔티티로 나눈다.

강한 엔티티 : 독립적으로 존재 (고객, 상품..)

약한 엔티티 : 다른 엔티티에 종속적 (고객 주소..)

 

관계의 구성

관계는 관계수, 선택성, 식별성, 관계면 등으로 구성된다.

- 관계수 : 1:1 / 1:N / N:M

- 선택성 : NOT NULL/ NULL

- 식별자 상속 : Primary Key/ Foreign Key

 

병렬 관계 : 엔티티와 엔티티 간에 두 개 이상의 관계를 맺는다. 

 

속성
: 데이터를 표현하는 가장 작은 단위, 속성이 가지는 의미를 통해 엔티티 특성이나 상태를 알 수 있다. 

속성의 특징

- 하나의 엔티티는 두 개 이상의 속성을 가진다. 

- 도메인은 속성이 허용하는 데이터 형식과 범위를 가진다. 

- 속성은 속성 값의 구성이나 성격에 따라 다양하게 분류할 수 있다.

   - 단순 속성과 복합 속성

       : 단순 속성은 속성을 더 분해할 수 없는 원자 값을 갖는다. 복합 속성은 단순 속성들의 조합으로 구성된다.

   - 저장 속성과 파생 속성

       : 저장 속성은 원래 존재하는 속성이다.파생 속성은 저장 속성이나 다른 파생 속성으로부터 파생된 속성이다. 파생 속성은 특수한 경우가 아니면 별도로 도출하지 않는다.

   - 단일 값 속성과 다중 값 속성

       : 단일 값 속성은 한 사람에 대해 하나의 값만 가지는 속성이다. 다중 값 속성은 하나의 속성이 여러 개의 값을 가지는 속성이다.

 

 

식별자

: 식별자의 특징으로는 유일성, 최소성, 불변성, 존재성이 있다. 

 

본질 식별자: 업무에서 일반적으로 통용되는 식별자

인조 식별자: 데이터를 효율적으로 관리하기 위해 별도로 추가한 식별자

 

3. 관계형 데이터 모델 이론

정규화

: 관계형 데이터베이스의 테이블에 대해 데이터를 입력, 수정, 삭제할 때 발생하는 이상 현상을 최소화하기 위해 좀 더 작은 단위의 테이블로 설계하는 과정

 

제1정규형

- 중복되는 행이 없어야 한다.

- 모든 열의 값은 원자 값을 가져야 한다.

 

제2정규형

- 키가 아닌 속성(후보키에 속하지 않는 속성)은 후보키 전체에 종속되어야 한다.

 

제3정규형

- 키가 아닌 속성들 간에서 서로 종속적인 관계가 없어야 한다.