1

質問: Informix には、Oracle の「マテリアライズド ビュー」に相当する構造がありますか? または、DB リンクを介して 2 つのテーブル (DB ではなく) を同期するためのより良い方法はありますか? 同期を自分で作成することもできました (依頼されました) が、それは車輪の再発明のように思えます。

背景:最近、AppServer と DB サーバーの組み合わせでは負荷を処理できなくなったため、モノリシックな Informix 9.30 DB (Valent の MPM) を分割する必要がありました (DB の一部を 1 つのサーバーで、他の部分を別のサーバーで)。

これを行うには、巨大なファクト テーブルと適切に定義されたディメンション テーブルのスター スキーマに配置されたユーザー定義のテーブル スペース (KPI リポジトリ) を分割する必要がありました。

残念ながら、電話会社のマネージャーは、ディメンション テーブル (正規化、データの冗長性、コーディングの必要なし) を 1 台のマシンに集中させ、他のマシンの DB リンクを介してビューとして利用できるようにすることにしました。ビューがサブクエリで使用されている場合(実証可能)、DBサーバーが時々クラッシュするため、これは遅く不安定です。製品サーバーでは非常にクールではありません

4

2 に答える 2

2

私はあなたの要件を理解しているかもしれませんが、エンタープライズレプリケーションを使用してDB全体に単一のテーブルを複製することはできませんか?

于 2009-01-16T15:42:31.377 に答える
1

IDS 9.30 は古風です (4 つのメイン リリースが現在オフになっています)。理想的には、まだ稼働していないはずです。IDS 11.50 へのアップグレードを計画している必要があります。

MrWiggles が述べているように、エンタープライズ レプリケーション (ER) を検討する必要があります。レプリケートするテーブルを制御できます。ER ではどこでも更新できるトポロジが可能です。つまり、2 つのシステムがある場合、いずれかのシステムでの変更がもう一方のシステムに複製されるように ER を構成できます。

IDS 9.40 と 10.00 の両方が、ER の管理を大幅に簡素化するための多くの機能を導入したことに注意してください。(IDS 9.30 がサポート対象外であるという事実だけでは十分でない場合) アップグレードするより多くの理由があります。

(IDS には MQT - マテリアライズド クエリ テーブルはありません。)

于 2009-01-16T15:50:25.310 に答える