簡體   English   中英

SSAS:我的維度表可以包含事實表中沒有的鍵嗎?

[英]SSAS: Can my Dimension Table contain keys that are not in the Fact Table?

這是一個非常基本的問題,但我找不到確切的答案。 維度表中是否可以有事實表中沒有的值? 我意識到相反的方向是一個問題。 我的事實表中沒有維鍵,維表中不存在維鍵,但是反過來又如何呢?

我有一個包含所有客戶的客戶表。 然后,我有一個包含客戶ID的訂單事實表,但是,並非所有客戶都曾訂購過某些東西,因此,訂單事實並不包含客戶表中每個客戶的客戶ID。

這似乎是一個合理的情況,但是在處理多維數據集時,我遇到了找不到鍵的問題,除了使用我的維度的命名查詢(其中我專門過濾掉沒有任何訂單的客戶)之外,沒有其他方法可以解決該問題。 這樣可以解決該錯誤,但是如果不需要,我寧願不必這樣做。 也許我的“找不到關鍵”錯誤確實還有另一個潛在的問題。

因此,我希望有人可以明確地告訴我我的方案是否可行。 我的維表中的記錄可以比事實表中的記錄多嗎? 如果是這樣,那么我將花費更多時間嘗試找出錯誤。 如果沒有,我將辭職,為需要使用它的每個事實創建客戶表的多個視圖。

謝謝

我會說是的……設置中幾乎沒有“危害”,最多您存儲的字節數可能超出了您的需要。 在這種情況下,在維度表中擁有尚未訂購任何商品的客戶不會損害任何東西,並且很可能會在客戶從創建到訂購再到創建和訂購的過程中邁出一個必不可少的步驟。

通常,維度表往往是從事實表派生的,而如何從事實表派生的事實表派生的維度表中的值有點令人困惑...但是我可以在您的表中看到它設定

我經常發現,“歸檔”維度值可以在所有引用該事實的事實記錄被重新指向之后徘徊很長時間。

對我來說似乎無害無犯...

當然是。

一般來說,您需要“一致的維度”,即可以在事實表之間共享的維度。

假設您的customer_orders_product事實表使用從2010年1月1日到2013年12月31日的日歷維度。

但是現在您添加了一個新的事實表Warehouse_receives_shipment,該數據可以追溯到2005年。

您不需要兩個日歷維度表。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM