6.4.3 抽出側Datareplicator運用時の注意
抽出側Datareplicatorを運用するときの注意を次に示します。
- 〈この項の構成〉
(1) 更新情報についての注意
-
複数の抽出側システムから同一の反映側システムの表を更新する場合,更新順序は保証されません。更新順序を制御する必要がある場合には,運用で実行してください。例えば,二つの抽出側システムA,Bから,反映側システムの表(T1)とをデータ連動する場合,抽出側システムAのマッピングキーの値「100」の行に対する更新の次に,抽出側システムBのキー値100の行に対する更新が実行されても,反映側システムのキー値100の行の値は抽出側システムBと同一になっていることは保証されません。
-
抽出側システムで抽出定義を変更する場合は,抽出側システムの更新情報がすべて反映側Datareplicatorに送信されたことを確認してから,実行してください。反映側Datareplicatorに送信する更新情報が残っているまま抽出定義を変更した場合,反映処理中にエラーになることがあります。この場合反映側Datareplicatorでは,エラーを回復できないことがあり,HiRDB Dataextractorを使った反映側DBの再作成が必要になることがあります。
-
抽出側Datareplicatorは,送信間隔内でトランザクションが完結している更新情報を対象に,トランザクションのコミット順に更新情報を反映側システムに送信し,反映側システムで反映されます。このため,送信間隔内で完結していないトランザクションについては,後に発生したトランザクションよりも後に,反映側システムに送信されることがあります。このときは,抽出側DBに対する更新処理の順序と反映側DBに対する更新処理の順序が異なることがあります。
-
抽出側HiRDBがパラレルサーバの場合,抽出側Datareplicatorはバックエンドサーバ単位に並行して,更新情報の抽出,送信を実行します。このためバックエンドサーバ間での更新順序は保証されません。ただし,全バックエンドサーバ上のシステムログファイル内の,すべての更新情報が抽出,送信され,さらに反映側DBでの反映が完了した時点で,抽出側DBと反映側DBの整合性が保証されます。
(2) 初期開始,部分初期開始についての注意
抽出側システムを初期化した状態で起動したときは,反映側Datareplicatorもhdsstart -i又はhdsstart -i -Dで起動してください。部分初期開始時は,部分初期開始の対象にした送信先に対応する反映側Datareplicatorをhdsstart -i又はhdsstart -i -Dで起動してください。
抽出側システムだけを初期状態で起動した場合には,KFRB02003-E(詳細コード5)でエラーになります。
ただし,反映環境定義でextract_initにnocheckを指定している場合は,反映側Datareplicatorを初期開始又は部分初期開始する必要はありません。
(3) イベントコードについての注意
抽出側システムから送信されたイベントのコードが反映環境定義で定義されていない場合,反映処理の動作には何も影響ありません。ただし,反映側Datareplicatorは,イベントの発生としては認識します。
(4) 環境変数HDE_BIN_COL_MAXLENについての注意
抽出側Datareplicatorの環境変数HDE_BIN_COL_MAXLENを指定(単位:キロバイト)すると,定義長は2GB以上でも実際に扱うデータは小さいBLOB型の列を,表を再定義することなくデータ連動できるようになります。ただし,環境変数HDE_BIN_COL_MAXLENに指定した定義長を超えるBLOB型の列が検出された場合,抽出側Datareplicatorは次の処理を実施します。
-
該当するBLOB型の列のデータをNULL値に置換して,反映側Datareplicatorに反映します。
-
NULL値に置換した更新情報から,マッピングキー列の情報をファイルに出力します。
出力されるファイルについて説明します。
- ファイル名及び出力先
-
「warn_keyinfo.BES名.送信先名」という名称で,抽出側Datareplicator運用ディレクトリ(HDEPATH環境変数に指定したディレクトリ)に作成されます。抽出側DBがHiRDB/パラレルサーバの場合は,環境変数HDE_BIN_COL_MAXLENに指定した定義長を超えるBLOB型の列が検出されたバックエンドサーバが存在するマシンの,抽出側Datareplicator運用ディレクトリに作成されます。
- 出力内容
-
ファイルに出力される内容の例を次に示します。
- 注意事項
-
-
抽出側Datareplicatorの開始前に上記のファイルを手動で削除してください。抽出側Datareplicatorの運用終了時にファイルが作成されていた場合は,データ連動中に,環境変数HDE_BIN_COL_MAXLENに指定した定義長を超えるBLOB型の列が検出されたことを示します。
-
マッピングキー列の情報は送信処理のタイミングで出力されるため,送信処理中にエラーが発生した場合,送信処理の再開後に,一度出力したマッピングキー列の情報を再度出力する場合があります。
-