FC2ブログ
 

Technology へようこそ
ここは技術者の「経験」と「ノウハウ」のブログです


--年--月--日

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。


2009年07月24日

クエリー・リライト

マテリアライズド・ビューを作成すると初期化パラメータのguery_rewrite_enabledが
標準値(TRUE)となっている場合にクエリー・リライト機能が利用できます。

クエリー・リライト機能とは、SQL文でマテリアライズド・ビューの参照元テーブルを
検索する場合、参照元テーブルを検索する場合のコストとマテリアライズド・ビューを
検索する場合のコストを比較し、マテリアライズド・ビューを検索した方が
コスト的に低いと判断された場合、SQL文が自動的に変換されるというものです。

マテリアライズド・ビューとはSELECT文の結果を保存する
オブジェクト(セグメントを保持する永続オブジェクト)です。
作成例)
create materialized view sample_mv
using index refresh force on demand enable query rewrite as
select col1, sum(col2) as cnt from sample_table group by col1
マテリアライズド・ビューの参照元テーブルとマテリアライズド・ビューの同期は
リフレッシュ処理で取ります。クエリー・リライトの初期化パラメータquery_rewrite_integrityの
標準値(enforced)では整合性が保障され同期が取れている場合のみリライトが行われます。

仕事ではマテリアライズド・ビューを作成するシチュエーションがありませんでしたが
使う機会があればこういった機能も考慮しておきたいです。

[ posted by kami ]

この記事に対するコメント


この記事に対するコメントの投稿














管理者にだけ表示を許可する



この記事に対するトラックバック
トラックバックURL
http://comfair2.blog24.fc2.com/tb.php/429-ed97a269
この記事にトラックバックする(FC2ブログユーザー)











上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。