본문 바로가기

수업/수업정리

2024-03-13-오후:데이터 모델링

1. 데이터 모델링

1) 정의

  • 우리가 살고 있는 현실 세계에서 사용되는 작업이나 사물들을 DBMS의 개체로 옮기는 과정
  • 변환할 수 있는 대상 : 실체가 있는 대상 뿐만 아니라, 행동도 변환할 수 있다.
  • 예시1) 올리브영 > 직원한테 상품 문의 > 구입
  • 직원R, 고객R, 상품R, 매장 정보R, 구입R
  • 상품 R : 상품번호, 이름, 제조일자, 회사, 가격 등..
  • 예시2) 신분증 발급
  • -이름, 주민번호, 주소, 발급기관, 발급날짜 등..

2. 프로젝트 진행

1) 요구사항 분석

  • 데이터 베이스 구축 범위 지정
  • ex) 프로젝트에 사용자는 관리자, 판매자, 구매자다

2) 설계 단계

  • 분석된 요구사항을 가지고 업무 프로세스를 식별
  • 데이터베이스 스키마 도출

3) 구현 단계

(1) 개념적 모델링

  • 요구사항을 수집하고, 분석한 결과를 가지고, 핵심 개념(개체)을 추출
  • 개체와 개체 간 관계를 정의
  • E-R다이어그램 작성

4) 각 단계 별 특징

  • 요구사항 분석 : 요구 사항 명세서 작성
  • 개념적 모델링 : ERD작성
  • 논리적 모델링 : 
  • 목표 DBMS에 맞는 논리적 스키마 설계
  • 테이블 설계
  • 무결성을 위해 관계를 맺고, 정규화를 진행
  • 물리적 모델링:
  • 데이터 저장
  • DDL

3. 데이터 모델의 구성 요소

1) 개체(Entity)

  • 사람이 생각하는 개념, 정보와 같은 현실 세계 대상
  • 개체 타입과 개체

2) 속성(Attribute)

  • 개체 타입이 가지는 특징을 알아야 한다

3) 관계(Relationship)

  • 개체 간 관계 또는 속성 간 논리적 연결
  • 개체와 개체가 맺고 있는 의미 있는 연관성

 

(1) 관계의 종류(데이터베이스 설계 시간에 진행)

  • 1:1
  • 1:n
  • n:m

 

(2) 관계 설정 방법

  • KEY를 설정하여 관계를 설정

 

(3) 관계의 특징

  • 릴레이션은 중복된 튜플(=row=record)을 가질 수 없다.
  • 릴레이션의 튜플을 식별하기 위해 KEY를 설정해서 유니크하게 식별
  • 릴레이션에서 튜플의 순서는 중요하지 않다