PowerReplication ユーザーズガイド V3.0 - Microsoft(R) Windows(R) 2000, Microsoft(R) Windows Server(TM) 2003 - |
目次
索引
![]() ![]() |
第2章 PowerReplicationの機能と仕組み | > 2.3 レプリケーションサービスの仕組み |
差分同期を利用して安定したシステムを構築するために、差分同期の仕組みを理解しておく必要があります。ここでは、差分同期の仕組みを説明します。
更新情報を取得する仕組みを説明します。
DBMSのトリガー機能を使用して更新情報が取得されます。
利用者プログラムが同期対象のデータファイルを更新することによって、自動的に設定されたトリガーが動作します。このトリガーが動作することによって、更新情報が更新情報ファイルに出力されます。
更新情報の取得を開始すると、トリガー機能が有効となります。更新情報の取得を停止すると、トリガー機能が無効となります。
同期対象のデータファイルにトリガーが作成されるタイミングやトリガー名は、"2.1.5 動作環境の構成"を参照してください。
なお、一括同期の場合、トリガー機能は使用されません。
差分同期で更新情報が取得、反映される動作を以下に示します。
トリガー機能が動作しない状態では、更新情報が取得できません。この状態で、利用者プログラムから更新したデータは、差分同期を実行しても反映されません。
この場合、一括同期を行って復旧することが必要です。
トリガー機能が有効に働くDBMSの機能を使用して、データベースを運用してください。
本製品をアンインストールする場合、事前にレプリケーションの構成定義を削除してください。レプリケーションの構成定義を削除せず、本製品をアンインストールした場合、データファイルに作成されたトリガーが削除されません。
この場合、各DBMSのユーティリティを使用してトリガーを削除してください。
PowerReplicationが自動的に更新情報を採取します。トリガー機能は使用しません。
更新情報が取得および削除されるタイミングを説明します。
更新情報は、同期対象のデータファイルを更新した時点で作成され、更新情報ファイルに蓄積されます。
同期処理で相手サーバに反映された更新情報が削除されます。
同期対象のマスタグループに関連づけたすべてのレプリカグループへの反映が完了した時点で削除されます。
同期対象のレプリカグループに関連づけたマスタグループへの反映が完了した時点で削除されます。
同期実行中のレプリケーショングループに対して、二重に同期を実行しようとした場合、後から実行した同期がエラーとなります。エラーとなった同期処理で反映しようとした更新情報は保持され、次回の同期実行で反映されます。
更新情報ファイルに保持されている更新情報をすべて削除して初期化できます。
通常は使用しません。システム異常の発生や運用方法の誤りなどによって、復旧作業を行う場合に使用します。
更新情報ファイルの初期化は、レプリケーションマネージャまたはrpctldifコマンドを使用して行います。
レプリケーションマネージャを使用して更新情報ファイルを初期化する方法は、"6.1.3 レプリケーションマネージャの画面操作"を参照してください。
rpctldifコマンドを使用して更新情報ファイルを初期化する方法は、"7.4 更新情報取得の開始/停止コマンド"を参照してください。
OracleまたはSQL Serverを使用する場合、更新情報の取得を開始するときに、必ず更新情報ファイルを初期化します。
このため、更新情報の取得を停止する場合、事前に同期を実行して、対象のレプリケーショングループすべてに更新情報を反映してください。
PowerReplicationは、競合を検出すると、マスタまたはレプリカのどちらか一方のデータを優先して競合の解消処理を行います。優先されないデータは破棄されます。
競合を解消する方法(競合解消ルール)には、以下の3つがあります。
競合を解消する処理を以下に示します。
すべてNULL値(反映先データの主キー以外の選択項目がすべてNULL値の場合)
主キーが存在しない(一致する主キーの値が存在しない場合)
(*1)優先したマスタまたはレプリカが反映先に存在している場合に「自システム優先」となります。
(*2)優先したマスタまたはレプリカが反映元に存在している場合に「他システム優先」となります。
(*3)マスタグループまたはレプリカグループの定義で[削除データと NULL値を同等に扱う]を設定した場合にだけ発生します。
(*4)他システムでの更新結果が自システムに反映されないため、マスタとレプリカの間でデータが不一致の状態になります。ただし、運用形態が[共用]で[競合検出を行う]場合、競合の解消によって結果的にデータが一致することがあります。
競合が発生しないようにレプリケーションの運用を設計することが重要です。
レプリケーションの運用の設計方法は、"第3章 導入/構築"を参照してください。
目次
索引
![]() ![]() |