2014-05-12 25 views
0

問題的簡單描述:我已創建6個維度表和一個事實表標準啓動模式。我需要添加一個額外的維度表或附加列到事實表中。但是,與星型模式中的其他維度不同,我想添加的最終維度是始終包含在對數據庫進行的每個查詢中的維度。我不確定在哪裏設計它。一個始終存在問題的補充維度表

長的描述:

我創建了星型模式的代表一些非常具體的谷歌分析查詢。在這樣的一個模式,我有以下幾點:

事實:PageTrafficFact

尺寸:

  • HostnameDim
  • PagePathDim
  • MediumDim
  • DateDim
  • LandingPagePathDim
  • ExitPagePath Dim

我需要在PageTrafficFact表中添加一列或者在PageTrafficFact表中添加一個額外的維來表示Google Analytics視圖配置文件ID(我稱之爲GAVPID)的相應數據。儘管所有其他維度可以互換地進行查詢,但在99.9%的時間內,發佈到數據庫的所有查詢都將特定於單個配置文件GAVPID。

雖然我可以讓GAVPID一個維度表,我也沒有預見到需要使用它是這樣。在每個查詢中進行額外的內連接的代價似乎過大。我想到的另一種方法是將GAVPID放置在PageTrafficFact表本身上。然後,而不是每個查詢的內部聯接,我可以執行一個更簡單的WHERE選擇我正在尋找的確切的GAVPID。

不幸的是,我沒有經驗判斷這將是最好的,我在谷歌的搜索很困難,因爲我不太清楚,我應該使用來尋找答案的關鍵字。

任何幫助或建議的資源將不勝感激!

回答

0

如果不需要爲新維度生成「零計數」(即,事實表中的數據在該維度中不是稀疏的,並且不需要「彙總」該維度,則單獨維表不是絕對必要的。

如果添加在事實表的附加列WHERE子句滿足已知的和預期的要求,我只想列添加到事實表。

+0

將不會有需要捲起谷歌分析查看資料的ID,但會有需要捲起改變其他維度的組合。 我就不用再產生任何零計入事實表。對於特定維度組合不存在的數據是可接受的,並且在應用程序級別被認爲是零或空值。 我唯一的擔心是最終會有大約5個其他事實表,它們都遵循類似的規則,並且還有一個配置文件ID。多個事實表共享配置文件ID維度會更好嗎? –