Spring DI, AOP

11. 데이터 모델링이란 - 패스트캠퍼스 백엔드 부트캠프 3기

gkss2tpt 2025. 2. 25. 14:46

1. 데이터 모델링 용어

  • 모델링 : 실제 대상을 추상화하여 단순하게 표현하는 것
  • 데이터 모델링 : 실제 업무에 맞게 데이터의 특성과 구조를 만드는 것
  • ER모델 : 개체(Entity)와 개체간의 관계(Relationship)로 표현하는 모델
  • ERD : ER모델을 그림(Diagram)으로 표현한 것

 

2. 기본키(PK)와 참조 키(FK)

  • 행(row) : 인스턴스 객체
  • 키본 키(Primary key) : 테이블 내의 한 행을 식별(구별)해주는 컬럼 - 순서X,유일성(중복X), 자주변경X
  • 참조 키(Foreign Key) : 다른 테이블에서 참조하는 컬럼

 

3. ER모델의 구성 요소

  • 엔티티(Entity) : 실존하는 개체 또는 개념(ex. 고객, 제품, 주문) -> 테이블
  • 관계(Relationship) : 엔티티 간의 규치고가 관계를 표현
  • 속성(Attribute) : 데이터를 표현하는 최소 단위. 테이블의 컬럼(columm)
  • 식별자(Identifier) : 엔티티(table)에서 인스턴스(row)를 구별할 수 있는 속성. 기본 키

 

4. 엔티티 관계(Entity Relationship)의 종류(1)

  • 관계수(cardinality) : 두 엔티티 간의 대응되는 행의 개수 - 1:1, 1:n, m:n(데이터 중복 발생) -> 1:n n:1로 나눠줘야한다.

 

4. 엔티티 관계(Entity Relationship)의 종류(2)

  • 선택성(optionality) : 관련 행(row)의 존재가 필수(|) 또는 선택(O) 여부
  • 필수(Mandatory), 선택(Optional)

 

4. 엔티티 관계(Entity Relationship)의 종류(3)

  • 식별자 상속 : 한 엔티티의 식별자(PK)가 다른 엔티티의 PK가 되는 경우 - 식별 관계

 

5. 데이터 모델링의 절차

  • 분석 : 현재(기존) 시스템을 분석하고 방향을 수립 한다.
  • 설계
    • 개념 모델링 : 주제 영역을 정의하고, 핵심 엔티티를 정의한다.
    • 논리 모델링 : 추가 엔티티 정의, 관계 정의, 속성(컬럼) 정의
    • 물리 모델링 : 테이블 설계 , 무결성 설계, 인덱스 설계(정렬, 위치정보 제공), 파티셔닝(테이블 나누기)