基本となるベーステーブルで変更が発生すると、手動で再表示されるマテリアライズドビューは古くなります。マテリアライズドビューに対して設定された古さのしきい値をデータが超えた場合、オプティマイザはそのビューを、クエリを満たすための候補と見なしません。手動ビューを再表示するということは、データベースサーバがそのビューのクエリ定義を再実行し、ビューのデータをそのクエリの新しい結果セットで置き換えることを意味します。再表示を行うと、ビューのデータが基本となるデータと一致します。手動ビューのデータの古さについて許容可能な程度を検討し、再表示の方式を考案してください。その際には、再表示操作中はビューでクエリを処理できないため、再表示が完了するまでにかかる時間を考慮する必要があります。
また、イベントを使用してビューを再表示する方式を設定することもできます。たとえば、イベントを作成して一定の間隔で再表示することができます。
即時マテリアライズドビューは、トランケートされた後などの未初期化状態 (データがない) の場合を除き、再表示する必要はありません。
materialized_view_optimization データベースオプションを使用して、古さのしきい値を設定できます。オプティマイザは、クエリの処理時にこのしきい値を超えたマテリアライズドビューを使用しません。
データベースサーバをアップグレードした後、またはアップグレード後のデータベースサーバで使用できるようにデータベースを再構築またはアップグレードした後は、マテリアライズドビューを再表示することをおすすめします。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |