다차원 모델링이란?
- 사실(Fact) 테이블과 차원(Dimension) 테이블 간 상호관계를 정의하여 다차원으로 구현하는 모델링 기법.
다차원 모델링의 구성요소
- 사실(Fact) : 사용자가 가장 먼저 조회하는 테이블, 모든 차원들의 정보를 취합.
- 차원(Dimension) : 사실로부터 Drill-Down된 테이블, 개별 사실에 대한 상세 정보.
- 속성(Attribute) : 개별 차원테이블에 소속되어 있는 분류기준, 검색과 여과(Filtering) 기능
- 속성계층(Hierachy) : 차원에 소속된 속성간의 계층관계, 위와 아래 이동의 네비게이션 역할.
다차원 모델링 기법
Star Schema
- 정의 : Fact 테이블과 Dimesion 테이블로 데이터를 분리하여 설계한 모델.
- 장점 : 이해하기 쉽고, 계층구조 정의 용이, 물리적인 조인수 감소
- 단점 : 설명 및 속성의 중복 저장, 상위 레벨에서의 조회 성능 저하
Snowflake Schema
- 정의 : Stat Schema의 차원 테이블을 완전 정규화시킨 것.
- 장점 : 정규화를 통해 중복된 데이터를 제거함으로써 저장공간을 줄임
- 단점 : 검색 질의의 많은 Join수로 인한 검색 속도 저하
Reference
그리타GRITA- 기술사 다차원모델링
JI-DUM
위키백과 - 스타스키마, 눈송이스키마