3

我對商業智能項目中的明星模型有一個普遍的疑問。例如,假設項目由一個事實表(F)和三個維度(D1,D2,D3)組成。 此外,讓我們假設事實表看起來像這樣:商業智能明星模型

d11 d21 d21  m11 m21 m21 
d12 d22 d22  m12 m22 m22 
d13 d23 d23  m13 m23 m23 
d14 d24 d24  m14 m24 m24 
d15 d25 d25  m15 m25 m25 
d16 d26 d26  m16 m26 m26 
d17 d27 d27  m17 m27 m27 

例如 - D23 =維NR 2,值NR 3中的尺寸 (同樣適用於措施)

現在,讓我們假設選擇是在每3個維度和事實表的以下部分中所作的選擇:

d11 d21 d21  m11 m21 
D12 d22 D22  m12 m22 
D13 D23 D23  m13 m23 
D14 D24 D24  m14 m24 
d15 D25 D25  m15 m25 
d16 d26 D26  m16 m26 
d17 d27 d27  m17 m27 

現在我想知道會/應該/需要爲哪些選項(標有大寫字母「d」)在明星模型考慮? 如果OUTER JOIN原理應用於,那麼下面將被選擇:

在以下值的第一meassure選擇
D12 d22 D22  m12 m22 
D13 D23 D23  m13 m23 
D14 D24 D24  m14 m24 
d15 D25 D25  m15 m25 
d16 d26 D26  m16 m26 

即將被視爲(M12,M13,M14,M15,M16)和第二量度(m22,m23,m24,m25,m26)。

在另一方面,如果INNER JOIN是事實表和維表之間,結果將被以下的選擇:

D13 D23 D23  m13 m23 
D14 D24 D24  m14 m24 

即用於下面的值第一個方法,可以考慮(M13,M14)和所述第二個度量(m23,m24)在相應的集合函數中。

以下哪種方法正在發生?

回答

3

我不能說所有的系統都是這樣,但標準的選擇方法是在尺寸表上做選擇,然後INNER JOIN用於事實表以過濾數據,INNER JOIN回到尺寸您沒有選擇,但是結果中顯示了列。

+0

準確地說我正在尋找的信息。非常感謝! 還有一個問題 - 您是否熟悉BusinessObjects,MS Analysis Services和QlikView是否可以實現這一原則?我認爲答案將取決於開發人員如何加入腳本/界面中的表格。不過,我想聽聽你的意見。 – Adam

+0

此外,我很清楚「你選擇維度表,然後INNER JOIN到事實表」。但是,爲什麼INNER JOIN會回到沒有選擇的尺寸?在我看來,我們會失去數據,即措施的價值會更低。在後一種情況下,支持你的主張並減弱使用OUTER JOIN的爭論的好論據是什麼? – Adam

+0

我同意。在Qlikview中,您可以在加載腳本中加載事實表,並且可以在不同列表中選擇維度的值(d1,d2,d3)。在這個列表中選擇值會導致連接(如INNER JOIN)。 – smartmeta