データ・ループの防止
双方向構成では、あるシステムから別のシステムにレプリケートされたSQL変更は、最初のシステムに再度レプリケートされないようにする必要があります。そうしないと、システム間でデータの移動が繰り返され、次の例のように無限ループに陥ります。
-
ユーザー・アプリケーションがシステムAのある行を更新します。
-
Extractは、システムAでその行を抽出してシステムBに送信します。
-
Replicatは、システムBでその行を更新します。
-
Extractは、システムBでその行を抽出してシステムAに戻します。
-
その行がシステムAに適用されます(2回目)。
-
このループが無限に継続します。
データのループバックを防止するには、状況に応じて次の処理を行う必要があります。
-
Replicatによって生成されるSQL操作を取得しないようにします。ただし、Extractのパラメータ・ファイルに指定されているオブジェクトがビジネス・アプリケーションに含まれる場合は、それらのビジネス・アプリケーションによって生成されるSQL操作の取得を有効化します。
-
ローカルReplicatトランザクションを識別します(Extractプロセスでそれらのトランザクションを無視するため)。