Database

[Modeling] Ch02.개념 모델링

OptimizerStart 2025. 5. 12. 02:10

[Modeling] Ch02.개념 모델링

 

데이터 모델링 전과정 ⭕ 암기

  1.  분석
    1. 현행 분석 AS IS  (있는 그대로)
      1. 현행 업무 분석
        • 현업 담당자와 협업 (우선)
        • 문서 ex. 업무 지침서, 과거 프로젝트
          • 현업 담당자와 일을 못하는 경우 문서를 통해 빠른 모델링 후 현업 담당자에게 피드백 받기
      2. 현행 데이터 분석
        • 리버스 모델링
      3. (추가) 요구사항 정의
        • 현업 담당자와 인터뷰
    2. 미래 계획 수립 TO BE
  2. 설계 -2
    1.  개념적 모델링 -2
      1. 주제 영역 정의
      2. 핵심 엔티티 정의
    2. 논리적 모델링 -3
      1. 엔티티 정의
      2. 관계 정의
      3. 속성 정의 (iv, 타입, 이름)
  3. 구현
    • 물리적 모델링

리버스 모델링

 

정의

  • 테이블(물리 DDL코드 )로부터 ERD(논리)를 생성하는 것.
  • 현행 분석의 업무 데이터 분석 단계의 방법

논리 ← 물리

  • 논리 : 한글 컬럼. 자세함
  • 물리 : 영어 컬럼. 컬럼명이 짧고 간결.

단점

  • 엔티티간 관계 파악 어려움
  • FK 로 테이블 관계가 맺어져 있지 않으면 리버스 모델링 불가.

방법

  1. 엔티티간 관계 파악
    • (물리) 모든 테이블을 한번에 논리 엔티티로 만듦
    • 여러번 나눠서 ( 주제영역, 테이블 owner단위)
  2. 엔티티로 만들 대상 테이블 선정
    1. 넣자: 테이블 생성, PK 제약 생성, 테이블 및 컬럼 주석 생성문
    2. 빼자 : 테이블 명이 백업, 이관(migrate), 날짜 , 임시(temp)이면 제거 하고 DDL 작성

[ Java ] *.class → *.java. decompile

 

개념적 모델링

  • 설계의 개략적인 것
  • 개념 대충 cf. 명확
  • 업무 중심

개념적 모델링 하는 일 ⭕암기

  1. 주제 영역 정의
  2. 핵심 엔티티 정의

 

과정

  • 대충(개념) ↔ 명확(논리) → 구현(물리)

 

주제영역 

정의  암기

  • 데이터를 기준으로 분류한 것.

특징

  • 기준을 가지면 영역이 생김
    • 영역은 동그라미 친 것.
  • 계층적으로 도출 (트리 거꾸로된 모양. 나무)
  • 중복 X
  • 주제 영역을 세분화 하면 최하위 주제영역에서 핵심 엔티티가 나옴
  • 핵심 엔티티를 가지고 핵심 엔티티 관련 엔티티가 여러 개 생김.

과정 -3

  1. 주제 영역 분류(식별)
    • 큰 카테고리로 나눔. 학교를 학생, 강의실, ..
  2. 주제영역 세분화(도출)
    • 주제 영역 세분화
  3. 주제영역 분류
    • 세분화된 주제영역의 분류 및 통합 . 5W1H
  4. 주제영역 정의
    • 카테고리 안에 뭐가 있는지 ex.
    • ex. 고객 주제영역이 있을 때 고객의 범위는? 비회원, 내국인
    • es. 학생을 학번, 이름 ..

 

Data Warehouse

분석용 데이터를 모아둔 것

 

핵심 엔티티 정의 

  • 최하위 주제영역을 갖는 주제 영역이 핵심 엔티티가 됨
  • 주제 영역을 대표하는 엔티티

참고

- <핵심 데이터 모델링, 유동오, DBian>