20분
Fact 테이블의 3가지 유형
Day 2: 분석팀이 매번 30분씩 기다려요 - 차원 모델링
Fact 테이블의 3가지 유형
데이터 모델링 > Day 2: 분석팀이 매번 30분씩 기다려요 - 차원 모델링
학습 목표
Fact 테이블의 3가지 유형을 구분할 수 있다 Grain 개념을 이해한다
Grain (입도)
Grain = Fact 테이블의 한 행이 의미하는 것
"이 테이블의 한 행은 무엇을 나타내나요?"
에디터 로딩 중...
Grain을 명확히 정의해야 중복/누락 방지!
Fact 유형 1: Transaction Fact
트랜잭션 팩트 = 개별 이벤트 기록
에디터 로딩 중...
특징:
- 한 행 = 하나의 이벤트 (주문, 클릭, 결제)
- 가장 상세한 레벨
- 행이 가장 많음
- 모든 분석의 기초
Fact 유형 2: Periodic Snapshot
주기 스냅샷 = 일정 기간 합계/평균
에디터 로딩 중...
특징:
- 한 행 = 일/주/월 단위 집계
- 트랜잭션 팩트에서 미리 집계
- 빠른 조회 (이미 집계됨)
- 상세 데이터는 별도 보관
Fact 유형 3: Accumulating Snapshot
누적 스냅샷 = 프로세스 진행 상태
에디터 로딩 중...
특징:
- 한 행 = 하나의 프로세스 (주문→배송→완료)
- 단계별 날짜/상태 기록
- 행이 UPDATE됨 (다른 Fact와 다름)
- 파이프라인/워크플로우 분석용
어떤 유형을 선택?
| 분석 목적 | Fact 유형 |
|---|---|
| 개별 거래 분석 | Transaction |
| 월별 매출 대시보드 | Periodic Snapshot |
| 주문 처리 시간 분석 | Accumulating Snapshot |
| 상세 드릴다운 필요 | Transaction |
| 빠른 집계 필요 | Periodic Snapshot |
보통 Transaction Fact를 먼저 만들고, 필요에 따라 Periodic Snapshot을 추가