본문 바로가기
📝자격증/SQLD

[SQLD] 1-1. 데이터 모델링의 이해

by スモモ🍒 2024. 2. 23.

제 1과목. 데이터 모델링의 이해

1. 데이터 모델링의 이해

  1) 데이터 모델의 이해

  2) 엔터티

  3) 속성

  4) 관계

  5) 식별자


1) 데이터 모델의 이해

● 데이터 모델 : 현실세계의 대상을 추상화, 명확화, 단순화하여 데이터베이스로 표현하는 것

●  데이터 모델링 : 주어진 개념으로부터 논리적인 데이터 모델을 구성하는 작업

(요구사항 파악 ▶ 개념적 데이터 모델 설계  ▶ 논리적 데이터 모델 설계 ▶ 물리적 데이터 모델 설계)

     - 계획/분석/설계 시 업무 분석 및 설계, 설명에 사용

     - 구축/운영시 변경,관리 목적으로 사용

     - 파급효과, 간결한 표현, 데이터 품질(데이터 중복/비유연성/비일관성)

 
개념적 모델링 추상적, ERD 생성, 업무중심, DBMS 독립적
논리적 모델링 Key 속성, 정규화 수행, 재사용성 높음
물리적 모델링 실제 DB에 이식되도록 성능, 저장 등 물리적 성격 요소

 

● ERD : Entity와 엔터티가, Relationship을 발견하고 Diagram으로 표현하는 행위 (개념적 데이터 모델링의 산출물)

* 작성 순서 : 엔터티 작성 → 엔터티 배치 → 관계설정 → 관계명 기술 → 관계차수 기술 → 관계필수여부 기술

 

● 논리적 모델링 작성 방법

: 속성 입력 → 각 엔터티에서 식별자(PK) 선택 → 정규화 수행(데이터 중복 방지)  → 관계설정(FK)

 

2) 엔터티 (Entity, 개체)

: 업무에 필요한 정보의 저장/관리 하기 위한 집합적인 명사 개념

 

* 특징

- 반드시 업무에 필요, 업무에 사용될 것

- 유일한 식별자로 식별 가능할 것

- 인스턴스가 2개 이상일 것

- 속성이 반드시 2개 이상일 것

- 관계가 하나 이상 존재할 것

 

* 명명규칙 : 현업 용어를 사용 / 약어 사용(가급적) 금지 / 단수명사 사용 / 유일해야 함 / 생성 의미대로 이름 부여

 

●  인스턴스(Instance) : 엔터티 집합 내에 존재하는 개별적인 대상       ex) 직원(엔터티) - 직원a, 직원b...(인스턴스) 

엔터티의 분류 (유/무형)
유형 엔터티 물리형태가 있는 엔터티 ex) 직원, 강사
개념 엔터티 물리형태가 없는 엔터티 ex) 부서, 과목
사건 엔터티 업무 수행 중 발생하는 엔터티 ex) 강의, 주문
엔터티의 분류 (발생 시점)
기본/키 엔터티 업무에 존재, 독립 가능, 주식별자 보유 ex) 직원, 고객
개념 엔터티 기본으로부터 발생 ex) 주문
사건 엔터티 2개 이상 엔터티로부터 발생 ex) 주문 이력

 

3) 속성 (Attribute)

: 더는 분리되지 않는 최소의 데이터 단위, 엔터티가 가지는 공통적인 특징을 표현,관리하고자 하는 정보

속성의 분류 (특성)
기본 속성 업무로부터 추출, 제일 많이 발생
설계 속성 설계 시 규칙화 등이 필요하여 만듬, (코드성, 일렬번호)
파생 속성 다른 속성으로부터 계산/변형되어 만들어짐

 

* 명명규칙 : 현업에서 사용하는 용어 / 약어사용 가급적 금지 / 명사형으로 작성 / 데이터 모델에서 유일해야 함

 

● 도메인 (Domain)

: 각 속성이 입력받을 수 있는 값의 범위를 의미, 테이블 생성 시 각 속성마다 자료형 및 제약조건을 줄 때 결정

ex) 이름은 문자형(자료형)으로 받되, 최대 5자리(제약조건)까지 받는 것으로 한다.

 

● 엔터티 / 인스턴스 / 속성의 관계

- 하나의 엔터티는 2개 이상의 인스턴스, 2개 이상의 속성을 가짐

- 속성은 각 인스턴스를 설명해 줄 수 있다.

- 하나의 속성에는 하나의 속성값만 들어간다.

 

4) 관계 (Relationship)

: 엔터티 내의 인스턴스 간에 서로 논리적인 연관성이 있는 상태

 

* 체크사항 : 연관규칙/정보조합/규칙서술/동사

 

* 표시 방법 (IE, BARKER 방식이 있음)

- 관계명(MemberShip)

- 관계차수(Cardinalty / Degree) : 엔터티 내 인스턴스의 참여 수     ex) 1:1, 1:M, M:N

- 관계선택사양 (Optionality) : 엔터티 내 인스턴스들이 필수/선택 참여하는지 의미

 

데이터 스키마 (Schema)

: 데이터베이스를 구성하는 데이터 개체, 속성, 관계 및 데이터 조작 시 데이터 값들이 갖는 제약 조건 등에 관하여 전반적으로 정의

 

* 종류

- 외부 (External) 스키마 : 여러 사용자 각각의 관점 (논리적 구조 정리)

- 개념 (Conceptual) 스키마 : 통합적, 조직 전체의 DB과정 (하나만 존재)

- 내부 (Internal) 스키마 : 데이터 물리 저장구조 표현 (저장)

 

5) 식별자 (Identifiers)

: 엔터티 내 유일하게 인스턴스를 식별할 수 있는 속성의 집합

 

* 분류

- 대표성 여부 (주식별자 / 보조식별자)

- 스스로 생성 여부 (내부식별자(PK) / 외부식별자(FK))

- 단일 속성여부 (단일식별자/복합식별자) : 식별자의 갯수

- 대체여부 (본질식별자/인조식별자)

 

* 주식별자 도출기준 : 업무에서 자주 쓰일 것 / 명칭, 이름은 피할 것 / 속성의 수가 많지 않을 것

 

* 특징

- 유일성 : 유일하게 식별

- 최소성 : 속성의 수는 최소로

- 불변성 : 가급적 변하지 않기

- 존재성 : 값이 꼭 존재해야 함

 


 

[ 참고 (이기적 무료강의) : https://www.youtube.com/@ydot0789/videos ]

'📝자격증 > SQLD' 카테고리의 다른 글

[SQLD] 1-2. 데이터 모델과 SQL  (0) 2024.02.24
[D-17] 2024 SQLD(52회) 준비, 달라진 점  (0) 2024.02.21