マテリアライズ照会表の作成
マテリアライズ照会表を使用すると、非常に大容量のデータを操作する複雑な照会パフォーマンスが改善されます。 マテリアライズ照会表を作成するには、CREATE TABLE ステートメントを使用します。
このタスクについて
Db2は、マテリアライズ照会表を使用して、1 つ以上の表から得られたデータの結果を事前に計算します。 照会をサブミットすると、Db2は、マテリアライズ照会表が定義されている基礎となるソース表の結果を計算するのではなく、マテリアライズ照会表に保管されている結果を使用できます。再作成された照会のコストが低い場合、Db2は、自動照会再書き込みという名前の再書き込み照会を使用して照会を最適化することを選択します。
照会の自動書き直しを利用するには、マテリアライズ照会表の定義、データの追加、定期的なリフレッシュが必要です。
プロシージャー
新しいマテリアライズ照会表を作成するには、次の手順で行います。
CREATE TABLE ステートメントを発行する。
例
以下の CREATE TABLE ステートメントは、TRANSCNT という名前のマテリアライズ照会表を定義します。 TRANSCNT は、TRANS 表内のトランザクション数を顧客、場所、および年別に要約します。
CREATE TABLE TRANSCNT (ACCTID, LOCID, YEAR, CNT) AS
(SELECT ACCOUNTID, LOCATIONID, YEAR, COUNT(*)
FROM TRANS
GROUP BY ACCOUNTID, LOCATIONID, YEAR )
DATA INITIALLY DEFERRED
REFRESH DEFERRED
MAINTAINED BY SYSTEM
ENABLE QUERY OPTIMIZATION;DATA INITIALLY DEFERRED 文節および REFRESH DEFERRED 文節と一緒に全選択を使用すると、表がマテリアライズ照会表として定義されます。