2009-12-03 81 views
1

將OLAP多維數據集的時間維放在其自己的表中(如其他維度)似乎是常見做法。MySQL OLAP多維數據集中的外部化時間維度?

我的問題是:爲什麼?

我根本看不到的優點是,可以有,而不必在立方體本身timestamp(int, timestamp)一個time_dimension表中加入了與一些time_id外鍵的立方體,是什麼。

原則上,時間點是不變的,不變的,它們是他們自己的價值。我不認爲人們很可能想要改變給定time_id的關聯值。

另外,timestamp列類型是4字節寬(在MySQL中),int類型也是如此,否則通常會成爲關鍵字,所以不能節省空間。

在與我的同事們討論這個問題時,我能夠想出的唯一有點合理的論點是符合其他維度。但我覺得這個說法相當薄弱。

回答

3

我認爲這通常是因爲時間維度表包含許多列,例如周/月/年/季度,這允許更快的查詢來獲取特定季度的所有X.

鑑於大多數OLAP多維數據集都是爲了獲取查詢而編寫的,所以這對我來說很有意義。

1

稻田是正確的,時間維度包含時間基元的有用的「別名」。您可以捕獲有關日期本身的有用信息,如季度,國定假日等。您可以使用這種方式編寫更快的查詢,因爲無需在查詢中編寫每個假期。

相關問題