0

BI 프로젝트에서 처음으로 작업하고있는 Pentaho 제품은 아직 익숙하지 않으므로 다음 모델이 올바른지, 나중에 문제가 발생하지 않을지를 알아야했습니다. BI 서버에서 계층 구조 작성!Snowflake 스키마 크기

감사합니다.

시간 차원 : enter image description here

답변

3

안 좋은 생각 : enter image description here

합병증 치수, 모든 합병증은 하위 합병증을 가질 수 있습니다.

캘린더 차원 테이블은 다음과 같이한다 : 데이터웨어 하우스의

create table calendar (
    calendar_id int primary key, 
    name text not null unique, 
    date_iso date unique, 
    year smallint, 
    quarter smallint, 
    month smallint, 
    month_name text 
    ... 
); 

insert into calendar values 
(0, 'N/A', null, null, null, null, null), 
(20130826, 'Aug 26, 2013', '2013-08-26', 2013, 3, 8, 'August'); 

점은 쉽게 분석이다. BI 분석가가 날짜를 얻기 위해 세 가지 조인을 수행한다고해서 분석이 쉽지는 않습니다.

calendar_id은 "스마트 키", 즉이 아니라 의미 대용 키입니다. 캘린더 테이블은 스마트 키를 사용해야하는 유일한 테이블이며 날짜별로 테이블 파티셔닝을 지원합니다. "N/A"(Not Available) 날짜를 허용하는 Nullable 필드에 유의하십시오. 0이 없으므로 0은 좋은 "N/A"값입니다.

기본적으로 정규화 수준은 팩트 테이블과 차원 테이블이어야합니다.

+0

하지만, 눈송이 스키마를 사용하여 위의 점은 무엇입니까?!, 당신이 보여준 모델은가! 스타 스키마하지 않는 가고, 나는 우리가 차원 내부의 계층 구조를 발견 할 때, 우리가 그것을 정상화 할 수있는 읽기 사실 테이블에 추가 된 것은 우리에게 눈송이 스키마를줍니다! 아니면 눈송이 스키마를 잘못된 방식으로 사용하고 있습니까? 고맙습니다. –