2016-09-19 2 views
0

누군가가이 문제를 해결할 수 있기를 바랍니다.데이터웨어 하우징 차원 디자인

차량 데이터웨어 하우스에 2 차원 트럭 및 패키지가 있다고 가정합니다. 둘 다 유형 2 SCD입니다.

dim_TRUCKS에는 다음 데이터가 포함

PACKAGE_KEY NAME  PRICE 
    4  Offroad 4000 
    5  Luxury  7000 
    6  Sport  2000 

비즈 규칙 및 요구 사항은 각 트럭이 하나의 패키지를 제공하는 주 :

TRUCK_KEY NAME PRICE 
    1  Ram 45000 
    2  F150 48000 
    3  Tundra 43000 

dim_PACKAGES는 다음과 같은 데이터가 포함되어 있습니다. (나는 그것이 현실적이지는 않지만, 내가 직면하고있는 특정 비즈니스 딜레마를 가장 잘 전달한다는 것을 안다.)

각 트럭이 제공하는 패키지는 시간이 지나면 바뀔 수 있습니다.

이렇게 설계하고 구현하는 가장 좋은 방법은 무엇입니까?

내 초기 생각은 단순히 이와 같은 dim_TRUCKS,에 PACKAGE_KEY을 추가하는 것입니다

TRUCK_KEY NAME PRICE PACKAGE_KEY 
    1  Ram 45000  4 
    2  F150 48000  4 
    3  Tundra 43000  6 

분명히 내가 무엇을 끝낼 거라고하는 것은 또 다른 SCD에 따라되는 SCD의 속성입니다. 그게 나쁜 디자인인가요? 더 좋은 방법이 있을까요?

감사합니다.

답변

0

비즈니스 규칙 one package only on one truck을 모델링하지 않았습니다. 차라리 fact 테이블에서 참조되는 크기로 PACKAGETRUCK을 설정하고 싶습니다.

이유 미래의 비즈니스 규칙 변경은 당신이 지금은 간단한 유지하는 경우보다 더 개조해야 할 수도 있습니다 (이것에 대한 확률이 일반적으로 높다)합니다.

당신도 옳았습니다. 항상 복잡성을 낮추고 선택할 수 있기 때문에 덜 복잡한 방식으로 직접 차원을 참조 할 것입니다.

관련 문제