我們開始設計數據集市/倉庫的構建模塊,我們需要能夠支持所有時區(我們的客戶來自世界各地)。從閱讀在線討論(和書籍),一個常見的解決方案似乎是在事實表中具有單獨的日期和時間維度以及時間戳。在數據集市/倉庫中處理時區
但是,我有難以回答的問題是日期和時間維度實際上對我考慮動態時區要求有什麼好處?時間維度更有意義,但我在日期維度上遇到困難。日期維度的一般設計方法通常包括諸如日期名稱,星期幾,月份名稱等屬性。我所遇到的問題是,2013年12月31日星期二晚上11:00以UTC表示的問題是星期三,2014年1月1日,在UTC + 2之後的所有時區中。
因此,如果我將不得不在每個查詢(和報告)上執行所有這些時區轉換,那麼擁有和存儲這些屬性的重點是什麼,我可能永遠不會使用(看起來像)?有些人建議每個時區都有事實排,但這對我來說似乎很荒謬。我們需要能夠每月存儲數百萬條記錄。
其他人建議有一個時區橋表,雖然有一定意義,但它似乎是額外的複雜性和額外的連接來完成我的客戶端應用程序和報表應該很容易從日期中找出的東西(報表將是主要基於網絡,其中有無數的圖書館來幫助轉換,顯示和格式化日期)。
我能想到的唯一的事情是易用性和可能通過日期和時間,但如何在實踐中不好的是由日期部分組性能分組(我們使用的是MS SQL,但我們將是查詢數百萬行),還是應該考慮非常簡單的日期和時間維度,其中大部分時間,日期,月份和年份的數據不多,因爲大多數文字(如星期一)在時區發揮作用時沒有多大意義。
優秀的問題dba.stackexchange.com –
您也可以從[本文](http://cwebbbi.wordpress.com/2005/11/01/handling-time-zones/)中的建議開始,然後張貼到dba.se與問題或問題。 –
關於DBA有幾個類似的問題;這似乎最接近:http://dba.stackexchange.com/questions/58762/data-warehouse-design-for-reporting-against-data-for-many-time-zones?lq=1 – 2014-08-22 22:44:32