개념 : 데이터 웨어하우스의 다차원 모델링 기법
- 데이터 웨어하우스 스키마중 가장 단순한 종류의 스키마로, 한 개의 사실 테이블과 주 키 및 각 차원과 추가적인 사실들로 이루어진 스키마
- 정규화 된 사실 테이블(Fact Table)을 중심으로 역정규화 된 차원 테이블(Dimension Table)들이 배치되는 형태의 모델링 기법
스타 스키마의 특징
특징 | 설명 |
MDDB 기능 | 관계형 데이터베이스를 활용하여 다차원 데이터베이스(MDDB) 기능 가능 |
적은 조인횟수 | 사실 테이블을 제외한 차원 테이블은 역정규화하여 조인 횟수 감소 |
빠른 쿼리 성능 | 차원 테이블을 정규화한 스노우 플레이크 스키마에 비해 빠른 쿼리 성능 |
스타스키마의 구조
- 사실 테이블을 중심으로 차원 테이블들이 뻗어져나오는 형태로 구성
스타 스키마의 구성요소
구분 | 구성요소 | 내용 |
다차원 모델링 기본개념 |
사실(fact) | - 사업의 특정 단면, 활동을 수치로 표현한 값 - 사실 테이블(Facts Table)에 저장 |
차원(dimensions) | - 주어진 사실에 대한 추가적 관점(View)를 제공 - 차원 테이블(Dimensions Table)에 저장 |
|
속성(attribute) | - 각 차원 테이블이 가지고 있는 속성 - 사실을 검색하고, 여과 및 분류할 때 사용 |
|
속성계층(hierarchies) | - 차원 내 정의된 속성들 간 - Drill-down, Roll-up 등의 기능 |
|
스타스키마 구성 테이블 |
사실 테이블 | - 수치 데이터와 차원 테이블과 연결되는 키를 중심으로 구성 - 스타 스키마에서 유일한 정규화된 테이블 |
차원 테이블 | - 사실에 대한 추가적 관점을 사용자에게 질의를 통해 조회 가능 - 비정규화(Denormalized) 데이터 구조 |
- 스노우 플레이크 스키마의 경우 최신 DBMS 기술과 하드웨어 지원을 받아 쿼리 퍼포먼스는 향상 될수 있지만,
높은 차수로 정규화된 테이블들은 리포팅을 어렵게하고 애플리케이션의 복잡도를 높이는 문제 발생
스타 스키마 vs. 스노우 플레이크 스키마
구분 | 스타 스키마 | 스노우 플레이크 |
유지보수/변경 | 중복 데이터로 상대적으로 유지보수 변경 어려움 | 중복성이 없으므로 스타 스키마에 비애 유지및 변경 쉬움 |
사용 용이성 | 낮은 쿼리복잡성, 이해 난이도 낮음 | 보다 복잡한 쿼리, 이해 난이도 높음 |
쿼리성능 | 외래키 수가 적어 쿼리 성능 빠름 | 외래키가 많을수록 쿼리 실행시간 느림 |
DW 유형 | 단순한 관계를 가진 데이터 마트에 적합 | 복잡한 관계를 단순화하기 위해 DW 코어에 적합 |
조인 | 더 적은 조인수 | 더 많은 조인수 |
치수표 | 각 차원에 대한 단일 차원 테이블만 존재 | 각 차원마다 둘 이상의 차원 테이블 가능 |
사용시기 | 차원 테이블 적은 수의 행이포함된 경우 | 치수 표의 크기가 상대적으로 큰 경우 |
정규화/표준화 해제 | 차원 테이블, 사실 테이블 일반화하지 않은 형식 | 차원 테이블은 정규화한 형식이지만 사실 테이블은 비정규화된 형식 |
데이터 모델 | 하양식 접근 | 상향식 접근 |