20분
SCD Type 0, 1: 이력이 필요 없을 때
Day 3: 작년 VIP가 올해 일반이 됐는데요 - SCD
SCD Type 0, 1: 이력이 필요 없을 때
데이터 모델링 > Day 3: 작년 VIP가 올해 일반이 됐는데요 - SCD
학습 목표
SCD Type 0과 Type 1의 차이를 이해한다 언제 어떤 타입을 사용하는지 판단할 수 있다
SCD Type 0: 절대 변경 안 함
Type 0 = 한 번 입력하면 영원히 안 바꿈
에디터 로딩 중...
이름이 바뀌어도 (개명) 원래 이름 유지.
사용 예:
- 고객 최초 가입일
- 직원 입사일
- 상품 최초 등록일
에디터 로딩 중...
SCD Type 1: 덮어쓰기
Type 1 = 새 값으로 덮어쓰기 (이력 없음)
에디터 로딩 중...
과거 전화번호는 사라짐!
사용 예:
- 오타 수정
- 전화번호, 주소 (분석에 영향 없는 속성)
- 정확한 최신 값만 필요한 경우
에디터 로딩 중...
Type 0 vs Type 1 비교
| 항목 | Type 0 | Type 1 |
|---|---|---|
| 변경 시 | 무시 | 덮어쓰기 |
| 이력 | 없음 | 없음 |
| 과거 값 | 최초 값 유지 | 사라짐 |
| 저장 공간 | 최소 | 최소 |
| 사용 예 | 가입일, 생년월일 | 전화번호, 오타 수정 |
언제 Type 0, 1을 쓰나?
Type 0 체크리스트:
- 이 속성은 절대 변경되면 안 되나?
- 최초 값이 비즈니스적으로 의미 있나?
Type 1 체크리스트:
- 이력이 분석에 필요 없나?
- 항상 최신 값만 중요한가?
- 과거 리포트 재현이 필요 없나?
주의: 매출, 등급 같은 속성은 Type 0, 1로 처리하면 안 됨! → 과거 분석 결과가 달라지는 문제 발생