스타 스키마
스타 스키마는 레코드를 차원 테이블, 팩트 테이블 및 구체화된 뷰로 구성하기 위한 회의입니다. 모든 정보는 열에 저장되며 다차원 개체로 작동하는 열을 식별하려면 메타데이터가 필요합니다.
스타 스키마는 디자인이 다차원 데이터 모델을 설명하는 관계형 스키마인 관계형 스키마입니다. 스타 스키마는 명시적 데이터 웨어하우스 스키마입니다. 이 스키마의 엔터티-관계 다이어그램은 기본 테이블에서 포인트가 있는 별을 재현하기 때문에 스타 스키마라고 합니다. 스키마의 중간에는 큰 팩트 테이블이 포함되어 있고 별표의 포인트는 차원 테이블입니다.
눈송이 스키마
눈송이 스키마는 여러 차원 테이블이 정규화되어 데이터를 더 많은 테이블로 나누는 스타 스키마 모델의 변형입니다. 결과 스키마 그래프는 눈송이와 유사한 모양을 형성합니다.
눈송이 스키마는 별의 각 점이 더 많은 점으로 분리되는 별 스키마의 확장입니다. 눈송이 스키마 다이어그램은 눈송이를 시뮬레이션하기 때문에 눈송이 스키마라고 합니다. Snowflake는 STAR 스키마에서 차원 테이블을 정규화하는 접근 방식입니다. 일부 차원 테이블을 완전히 정규화하면 결과 구조가 중간에 팩트 테이블이 있는 눈송이와 유사합니다.
눈송이 모델과 스타 스키마 모델의 차이점은 눈송이 모델의 차원 테이블이 정규화된 형태로 유지될 수 있다는 것입니다. 이러한 테이블은 차원 구조가 열로 포함될 때 큰 차원 테이블이 완전히 커질 수 있기 때문에 유지 관리가 간단하고 저장 공간을 저장합니다.
이 공간의 대부분은 중복 정보이기 때문에 정규화된 구조를 만들면 전체 공간 요구 사항이 줄어듭니다. 그러나 눈송이 구조는 쿼리를 실행하는 데 더 많은 조인이 필요하기 때문에 검색 효율성을 감소시킬 수 있습니다. 결과적으로 시스템 성능이 저하될 수 있습니다. 성능 벤치마킹을 사용하여 이 디자인에 적합한 것을 결정할 수 있습니다.
Star Schema와 Snowflake Schema를 비교해보자.
스타 스키마 | 눈송이 스키마 |
---|---|
간단한 데이터베이스 설계입니다. | 복잡한 데이터베이스 설계입니다. |
스타 스키마에서는 단일 조인만 팩트 테이블과 차원 테이블 간의 관계를 만듭니다. | 눈꽃 스키마는 데이터를 검색하기 위해 여러 조인이 필요했습니다. |
큐브 처리가 더 빠릅니다. | 복잡한 조인으로 인해 큐브 처리가 느릴 수 있습니다. |
정규화를 사용하지 않습니다. | 정규화 및 비정규화를 사용합니다. |
스타 스키마는 더 적은 수의 조인을 사용합니다. | Snowflake 스키마는 많은 수의 조인을 사용합니다. |