マテリアライズド・ビュー内のデータは、そのビューが参照するテーブルのデータが変更されることによって古くなります。materialized_view_optimization データベース・オプションを使用すると、古さのしきい値を設定できます。オプティマイザは、クエリの処理時にこのしきい値を超えたマテリアライズド・ビューを使用しなくなります。materialized_view_optimization データベース・オプションは、マテリアライズド・ビューがリフレッシュされる頻度に影響しません。
クエリがマテリアライズド・ビューを明示的に参照している場合、そのビューのデータの古さに関係なく、ビューがクエリの処理に使用されます。さらに、materialized_view_optimization データベース・オプションの設定を上書きし、マテリアライズド・ビューを強制的に使用する場合に、SELECT 文の OPTION 句を使用できます。SELECT 文を参照してください。
マテリアライズド・ビューがオプティマイザによって検討されない場合、古さに原因がある可能性があります。ビューをリフレッシュするイベントまたはトリガに指定した間隔を調整してください。
スナップショット・アイソレーションが使用されている場合、トランザクションのスナップショットの開始後にマテリアライズド・ビューがリフレッシュされると、オプティマイザはそのマテリアライズド・ビューを使用しません。
materialized_view_optimization データベース・オプションの使用方法については、materialized_view_optimization オプション [データベース]を参照してください。
イベントとトリガの使用については、スケジュールとイベントの使用によるタスクの自動化を参照してください。
マテリアライズド・ビューがオプティマイザによって検討されたかどうかを特定する方法については、実行プランの解釈とクエリのパフォーマンスのモニタを参照してください。
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |