2018년 11월 30일
다차원 모델링 (Star, Snowflake Schema)
1. DW 모델링, 다차원 모델링
- 다차원 모델링 (Star, Snowflake Schema)
- DW 모델링 시 사실 테이블과 차원 테이블 간 상호관계를 정의하여 다차원으로 구현하는 데이터 모델링 기법
2. 다차원 모델링 구성요소
| 구분 | 구성요소 |
|---|---|
| 사실 (Facts) | – 중심테이블로서 관련성이 높은 매체 집합 – 두 가지 Type의 Measure – Raw(Base) fact / Derived(Calculated) metric |
| 차원 (Dimensions) | – 부속 테이블(minor 테이블) – 각 Fact를 분석하는 하나의 관점 |
| 속성 (Attribute) | – 각 차원 테이블이 가지고 있는 속성임 – 사실을 검색하고, 여과하고 분류할 때 사용됨 |
| 속성계층 (Hierarchies) | – 차원 내 정의된 속성들 간 존재 계층 관계 – 아래로 가기(Drill-down)/위로 가기(Roll-up) |
3. 다차원 모델링 기법
(1) Star Schema 모델링
| 구성도 | 설명 |
|---|---|
![]() | – 하나의 사실 테이블 – 다수의 차원 테이블 – 적은 Join, 빠른 Query 성능 (+) 쉬운 이해, 계층 정의 용이 (-) 상위레벨 조회 성능 저하 |
(2) Snowflake Schema 모델링
| 구성도 | 설명 |
|---|---|
![]() | – 차원 테이블을 정규화 – 데이터 중복 문제 해결 – Star Join으로 속도 저하 가능 (+) 데이터 중복 해결, 정규화 (-) Star Join으로 속도 저하 |
4. 다차원 모델 기법 간 비교
| 항목 | Star Schema | Snowflake Schema |
|---|---|---|
| 정규화 | – 비정규화 | – Dimension Table 정규 |
| 정합성 | – 보장 불가 | – 정합성 보장 |
| Join정도 | – 적은 Join 성능, 빠름 | – Join 횟수 증가, 느림 |
| 특징 | – 다차원 분석 | – 계층화 및 분석 가능 |
| 장점 | – 조인 수 적임, 고성능 | – 소형 테이블, 정규화 |
| 단점 | – Data 일관성 낮음 | – 조인수 많음, 저성능 |

