2

Oracle で dblink を介してテーブルのキャッシュ コピーを作成したいと考えています。話は次のとおりです。

リモート データベースの 3 番目のテーブル (emloyee_work) を介して結合された 2 つのテーブル (employee、work) があります。その理由は、2 つのエンティティ間の接続を切り離して、直接接続できないようにするためです。

データを簡単に処理するために、結合テーブルを介してテーブルを接続するビューがあります。これは、他の 2 つと同じデータベースに結合テーブルを配置することと同じであると主張できますが、現時点では重要ではありません。

新しいサイトでは、db リンクの待ち時間が非常に長く、パフォーマンスが大幅に低下します。これは、選択ごとにビューが構築され、db リンクを介して各従業員に対して選択が実行されるためです。

構造体の読み取り回数が相対的に多く、書き込み回数が少ない。

問題は、リモート結合テーブルをローカル データベースに「ミラーリング」またはコピーする可能性があるかどうかです。このコピーは一時的なもので、永続化しないでください。

このようにして、ビューはローカル コピーで実行されます。

編集: Oracle のバージョンは 11gR2 です

4

1 に答える 1

0

オンデマンドで更新された具体化されたビューを使用できます。dblink を介した具体化されたビューの実装について話しているこのリンクも参照してください。

Oracle 11g を使用しているため、アドホックな RAM ベースのマテリアライズド ビューを作成できます。

于 2013-03-04T14:21:42.827 に答える