文章詳情頁
教你提高商業(yè)智能環(huán)境中的DB2查詢性能
瀏覽:15日期:2023-11-11 10:14:50
本文主要討論可以使決策支持系統(tǒng)(DSS)中的大型查詢高效地執(zhí)行的一些方法。這些查詢通常都是訪問較多數(shù)據(jù)的單純 select 查詢。下面是我們要討論的一些方法: 1、建立適當(dāng)?shù)膮⒄胀暾约s束; 2、使用物化查詢表(MQT)將表復(fù)制到其它數(shù)據(jù)庫分區(qū),以答應(yīng)非分區(qū)鍵列上的合并連接; 3、使用多維集群(MDC); 4、使用表分區(qū)(DB2® 9 的新功能); 5、結(jié)合使用表分區(qū)和多維集群; 6、使用 MQT 預(yù)先計算聚合結(jié)果。 本文中的例子針對 Windows 平臺上運行的 DB2 9。但是,其中的概念和信息對于任何平臺都是有用的。由于大多數(shù)商業(yè)智能(BI)環(huán)境都使用 DB2 Database Partitioning Feature(DPF,DB2 數(shù)據(jù)庫分區(qū)特性),我們的例子也使用 DPF 將數(shù)據(jù)劃分到多個物理和邏輯分區(qū)之中。 數(shù)據(jù)庫布局和設(shè)置 本節(jié)描述用于在我們的系統(tǒng)上執(zhí)行測試的數(shù)據(jù)庫的物理和邏輯布局。 星型模式布局 本文使用如下所示的星型模式:
清單 1. 星型模式其中的表的定義如下: 事實表 SALES_FACT 包含 2006 年的總體銷售信息。它包括產(chǎn)品售出日期、產(chǎn)品 ID、銷售該產(chǎn)品的商店的 ID、售出的特定產(chǎn)品的數(shù)量,以及產(chǎn)品的價格。事實表中還添加了 TRANSACTION_DETAILS 列,以便在從事實表中訪問數(shù)據(jù)時生成更多的 I/O。 1、維度表 DATE_DIM 包含商店開放期間的惟一的日期和相應(yīng)的月份、季度和年份信息。 2、維度表 PRODUCT_DIM 包含公司所銷售的不同產(chǎn)品。每種產(chǎn)品有一個惟一的產(chǎn)品 ID 和一個產(chǎn)品描述、型號以及質(zhì)地。 3、維度表 STORE_DIM 包含不同的商店 ID 和商店的位置、所屬街區(qū)以及所屬區(qū)域等信息。 數(shù)據(jù)庫分區(qū)信息 各表都位于它自己的分區(qū)組中。3 個維度表都比較小,所以它們位于一個數(shù)據(jù)庫分區(qū)上。而事實表則跨 4 個分區(qū)。 表空間信息 緩沖池信息 本文中的測試所使用的默認(rèn)緩沖池是 IBMDEFAULTBP,該緩沖池由 1,000 個 4K 的頁面組成。在本文的測試中,所有表空間共享這個緩沖池。在通常的 BI 環(huán)境中,會創(chuàng)建不同的緩沖池。 主查詢 下面的查詢用于測試本文中討論的各種不同的方法。該查詢執(zhí)行一個向外連接,比較二月份和十一月份 10 家商店的銷售信息。

標(biāo)簽:
DB2
數(shù)據(jù)庫
排行榜
