Oracle9i Replication: 多重化マテリアライズド・ビュー

マテリアライズド・ビューとは、その名が示すとおり“実体のあるビュー”のことです。マテリアライズド・ビューは、Oracle のレプリケーション機能のひとつであるスナップショットのメカニズムを使用して実装されています。

このマテリアライズド・ビューに基づいたマテリアライズド・ビュー(多重化マテリアライズド・ビュー)を作成することができます。多重化マテリアライズド・ビューを使用すると、レプリケーション環境を柔軟に設計できます。多重化マテリアライズド・ビューを使用することにより、ユーザーは(ノートPCを使用するモバイル・ユーザーも含めて)データを各自のローカル・サイトで保持することができ、ローカル・サイトでの変更をマスター・サイトに適用し、マテリアライズド・ビュー・サイトに対して変更されたすべてのデータをマスター・サイトから読み取ることによって、後からデータを再同期化することが容易に行えます。

多重化マテリアライズド・ビューは、例えば次のよう環境で役立てることができます。
  • 本社・支社間での情報共有
  • Sales Force Automation(SFA)アプリケーションなどでの情報の活用
  • モバイル環境など非同期的に接続されている状況での情報の利用
多重化マテリアライズド・ビューは、3階層以上の構造を持つ組織や、ネットワーク・リソースに制約を受ける状況において有用です。 上の図の企業本社(Corporate HQ)、地域本社(Regional Office)、地域支社(Branch Office)という構成の例では、地域支社は企業本社サイトへ直接でなく間接的に接続しています。
多重化マテリアライズド・ビューを設定することで、企業本社ですべてのデータを保守し、地域本社は特定地域内のカスタマのサポートに必要なデータを保守し、地域支社は地域本店からのデータの一部、つまり各支店のサポートに必要な情報のみを受け取るといったようにレプリケーション環境をネットワーク資源などの制約にあわせて構成することができます。
同様に、各支店 から別のマテリアライズド・ビューを作成することで、社内ネットワークから切断されている場合でも営業担当者が個々のカスタマに関する情報を容易に参照および保守できるようにすることができます。

更新可能な多重化マテリアライズド・ビュー構成では、他の更新可能なマテリアライズド・ビューをベースに更新可能なマテリアライズド・ビューを作成できます。 中間層の更新可能なマテリアライズド・ビューは、それぞれ後続の更新可能なマテリアライズド・ビューに対するレプリケーション・サイトとして機能し、データを増分的にリフレッシュすることができます。 つまり、マスター・サイトとの最後の再同期化後に行われた変更のみを読み取ります。
マスターとして機能する各マテリアライズド・ビューはマスター・マテリアライズド・ビューと呼ばれ、後続の各マテリアライズド・ビュー・サイトからの更新における競合の検出と解決を実行します。 下位レベルのサイト(上の図の地域支店など)で発生した変更が拒否されると、親マスター・マテリアライズド・ビューのデータ値は、通常のリフレッシュ・メカニズムによって下位レベルのサイトにリフレッシュされます。 変更は、中間レベルのサイトの連続的なリフレッシュによって最上位レベルのサイトまで適用されます。

この機能は、Oracle9iのStandard EditionとEnterprise Editionの両方で使用できます。

 Oracle9i Database 技術資料 - Business Intelligence (データ・ウェアハウス) - Oracle9i のマテリアライズド・ビュー
 Oracle9i Database マニュアル(ドキュメント) - パフォーマンス&レプリケーション - Oracle9i レプリケーション
 Oracle9i技術資料

Oracle9i Database Daily Feature
 アーカイブ