SQLD 자격증 공부 - 데이터 모델링 part.4
SQLD 자격증 대비를 위한 데이터 모델링의 기본 요소(Entity, Attribute, Relationship), ERD 작성 절차 및 좋은 데이터 모델의 기준을 설명합니다.
SQLD 자격증 공부 - 데이터 모델링 part.4
04. 데이터 모델링의 요소와 ERD
데이터 모델링의 핵심 3요소
데이터 모델링의 근간을 이루는 3가지 개념은 다음과 같습니다:
엔터티(Entity)
- 현실 세계의 객체(사물, 사건 등)를 모델링한 것
- 예: 고객, 주문, 상품, 사원, 병원 등
속성(Attribute)
- 엔터티가 가지는 고유한 특성
- 예: 고객 이름, 전화번호, 생년월일 등
관계(Relationship)
- 두 개 이상의 엔터티 간의 연관성 표현
- 예: 고객이 주문한다, 사원이 부서를 소속한다 등
엔터티가 중심이 되고, 속성이 이를 설명하며, 관계는 엔터티 간 연결 고리를 만드는 구성입니다.
ERD란 무엇인가?
ERD는 Entity Relationship Diagram의 약자로, 데이터 모델링에서 가장 많이 사용하는 시각적 도구입니다. 엔터티 간의 관계, 속성을 시각적으로 표현함으로써 시스템 설계를 쉽게 이해할 수 있습니다.
- 개발자와 설계자, 기획자가 공통된 데이터 구조 인식을 가질 수 있는 커뮤니케이션 도구
- 1976년 피터 첸(Peter Chen)에 의해 제안된 ER 모델을 기반으로 함
ERD 작성 절차
- 엔터티 정의 및 생성
엔터티 배치
- 가장 중요한 엔터티를 좌측 상단에 두고, 관계를 따라 배치
관계 설정
- 엔터티 간의 관계선을 연결하고, 관계명 추가
- 관계명 서술
- 관계 참여도 기술 (1:1, 1:N, N:M 등)
- 관계의 필수 여부 기술 (필수 관계 vs 선택 관계)
ERD 작성 순서:
다 → 바 → 라 → 가 → 마 → 나
ERD 표기법
ERD에서는 다양한 표기법이 존재하며 대표적으로 다음과 같습니다:
1. IE / Crow’s Foot 표기법 (가장 일반적)
- 발 끝 모양의 선으로 관계 표현 (1:N, N:M)
2. Barker / CASE*Method 표기법
기호 기반 속성 표기법:
#
식별자 속성 (Primary Key)*
필수 속성 (Not Null)o
선택 속성 (Nullable)
예시:
1
고객 (#고객ID, *이름, o이메일)
좋은 데이터 모델이란?
모든 상황에 정답이 되는 모델은 없지만, 다음과 같은 기준을 충족하면 “좋은 모델”이라 평가받을 수 있습니다.
요소 | 설명 |
---|---|
완전성 | 업무에 필요한 모든 데이터를 포함해야 함 |
중복 제재 | 동일한 사실을 여러 번 기록하지 않도록 설계 |
업무 규칙 표현 | 비즈니스 로직과 제약조건을 데이터 모델에 명시 |
데이터 재사용성 | 동일한 데이터를 다양한 프로세스에서 활용 가능 |
의사소통 수단 | 관계자 간 커뮤니케이션을 위한 시각적 도구 역할 |
통합성 | 전체 조직에서 일관되게 정의되어야 함 |
예: 보험사 급여 시스템에서 직원의 근무 형태에 따라 급여 항목이 다르다면, 이런 업무 규칙이 데이터 모델에 표현되어야 모든 개발자와 분석가가 동일한 이해를 가질 수 있습니다.
연습문제 복습
문제 1: 데이터 모델링의 중요 요소가 아닌 것은?
- (1) Attribute ◯
- (2) Entity ◯
- (3) Relationship ◯
- (4) External X
문제 2: ERD 작성 절차로 옳은 것은?
- 정답:
다 → 바 → 라 → 가 → 마 → 나
- (다) 엔터티 정의 및 생성 → (바) 배치 → (라) 관계 설정 → (가) 관계명 서술 → (마) 관계 참여도 → (나) 필수 여부 기술
This post is licensed under CC BY 4.0 by the author.