2

大規模な (6 TB) oracle データベースへの更新ストリームを別の非 DBMS システムにレプリケートする最良の方法は何ですか? Oracle データベースを「一括ロード」する必要はありませんが、すべての更新をほぼリアルタイム (10 秒以下のレイテンシー) で別の自家製システムに流したいだけです。更新は 1 秒あたり 10 メガバイトに相当する 150 行/秒の速度で行われます。

明確にするために、あるデータベースから別のデータベースに複製していないことを強調しておきます。これはアプリケーション統合の問題です。データベースから社内の非データベース アプリケーションにレプリケートする必要があります。エンタープライズ サービス バスを使用することを考えましたが、それは不適切なようです。

4

1 に答える 1

2

では、トランザクション ログを別のファイル システムに送り込むだけのログ ベースのレプリケーション スキームを実装したいとお考えですか? これを可能にする商用製品がいくつかあります。よく知られているのはSharePlexGoldenGateです。さらに、 Zizzyと呼ばれるオープン ソースの製品もありますが、試したとは言えません。

編集 1:更新を別のデータベースにフィードしたくない場合、GoldenGate のイベント駆動型アーキテクチャは、レプリケーションを JMS メッセージ バスに接続する手段を提供します。アプリケーション統合の場合、これは私が選ぶオプションです。

編集2:メッセージバスの使用があなたの望む方法ではない場合、私が見ることができる他の唯一の賢明な代替手段は、手を汚してOracleのLogMiner APIを使用することです. IIRC、これは Oracle が Streams や DataGuard などの機能に使用するものであり、ほとんどの変更データ キャプチャ ソリューションが内部で基づいている可能性があります。

于 2008-11-12T20:35:37.903 に答える