[스타 스키마]
스타스키마는 다차원 데이터를 표현하기 위한 관계형 데이터베이스 설계기법이다.
사실(Fact)테이블과 차원(Dimension)테이블로 구성된다.
사실테이블을 중심으로 차원테이블들이 뻗어져나오는 형태를 취한 모습 때문에 '스타'라는 이름을 가졌다.
사실이란 실제 데이터요소로 주로 숫자로 된 값을 가지는 변수차원의 항목
사실들은 중앙의 사실테이블에 저장된다.
차원이란 값들을 보는 관점을 나타내며 각각의 차원은 차원테이블에 표현된다.
차원테이블에는 각 차원의 다양한 속성들이 저장된다.
단순하고 쉽게 이해할 수 있는 모델이며 보고서를 만들 때 필요한 조인 횟수를 줄여 성능에 장점을 가진다.
[사실 테이블]
스타스키마에서 유일하게 정규화된 테이블로 사실들과 각 차원테이블과 연결되는 외래키들을 가진다.
사실테이블은 외래키의 조합으로 기본키를 가지는데 컴포지트 키(Composite Key)라 한다.
스타스키마에서 키 값은 대부분 그 자체로는 의미없는 인공키가 사용된다.
키 값은 각 레코드를 구분할 수 있는 최소한의 크기로 시스템에 의해 생성된 수치형태를 가져
최소한의 공간을 차지, 한번에 많은 인덱스가 메모리에 읽혀질 수 있어 성능향상에 도움이된다.
[사실의 유형]
사실은 대부분 수치데이터이며 차원의 속성값에 대해 집계(계산)될 수 있다.
이런 사실을 합산가능한 사실(Additive facts)라 한다.
일부차원에 대해서 집계한 값이 의미를 갖지 못하는 사실을 일부차원에 대해서만 합산 가능한 사실(Semiadditive facts)라 한다.
또, 어떤 차원에서든지 집계 값이 의미를 갖지 못하는 사실을 합산이 되지 않는 사실(Non-additive facts)라 한다.
[멀티스타 스키마]
사실테이블은 차원테이블과 대응된다. 하지만 키중에 차원테이블이 필요없을 때가 있는데
이처럼 사실테이블의 기본키와 외래키가 동일하지 않은 스타스키마를 멀티스타(Multi-star)스키마라 한다.
[차원 테이블]
차원테이블은 사실에 대한 사용자관점을 나타낸다.
관점에 대한 특성들을 속성이라 하며 사용자에게 의미가 있고 질의를 통해 볼 수 있는 형태의 값을 가진다.
차원테이블은 비정규화된(Denormalized) 데이터구조를 가진다.
필요한 정보가 하나의 테이블에 저장돼있어서 (조인을 줄여) 성능적으로 유리하다.
[차원 테이블의 공유]
여러 스타 스키마 모델 사이에서 같은 구조를 가지는 차원테이블은 물리적으로는 하나만 존재하지만
여러 모델에서 공유될 수 있다.
차원을 공유할 경우 공유된 차원을 중심으로 모델간 드릴 어크로스(Drill Across)할 수 있다.
[출처] 스타 스키마 (Star Schema)|작성자 Ehne
'DB' 카테고리의 다른 글
DB 정규화 (0) | 2014.10.17 |
---|---|
MOLAP vs ROLAP (0) | 2014.10.17 |
빅데이터(BIG DATA) (0) | 2014.10.17 |
빅데이터 3V (0) | 2014.10.17 |
create table 옵션 (0) | 2014.10.17 |