我正在計劃一個軟件,它的核心是一個OLAP應用程序(它有助於分析計量數據),並將爲其數據庫提供某種星型模式,因爲存儲的值將從不同的角度(時間,源,類型等),並且請求將要求這些維度的彙總數據。查詢往往會提供很多行(高達約100 000)。「假」位圖索引有意義嗎?
我對此主題的研究(另請參閱my question here)似乎表明,位圖索引是以我計劃的方式搜索數據的好方法。但是,我想支持多個數據庫引擎,其中一些不在其表上提供位圖索引(特別是MySQL)。
現在,我當然可以構建和維護我自己的位圖索引,並使用它來查找指向事實表的行ID。但是,我懷疑這會破壞索引的整個目的,因爲數據庫仍然要在B-Tree中搜索行標識符。能否有更深刻的理論背景或更豐富經驗的人告訴我,我是否還能獲得任何東西,比如不必在維度表上做緩慢的JOIN?
如果答案不簡單,我也會很欣賞我必須評估的提示。
對於做suppo數據庫rt位圖索引,我建議使用它們而不是用所有數據庫的最小公分母。 – 2008-11-07 22:44:39