ログ・フラッシュの制御
トランザクション・ログを読み取る際、Extractは、コミット・レコードを取得するまでトランザクションを処理しません。コミット・レコードが、一杯になっていないデータ・ブロックにある場合、さらにログ・アクティビティが生成されてブロックが一杯になるまでコミット・レコードは取得されません。Extractがログの読取りに使用するAPIでは、一杯になった物理データ・ブロックのみ取得されます。
コミットを含むブロックの取得の遅れによって、ソース・データとターゲット・データとの間でレイテンシが発生します。アプリケーションでブロックを一杯にするのに十分なログ・レコードが生成されない場合、Extractは、ブロックが一杯になって解放されるまで、SAVEPOINT
およびCOMMIT
文を発行して独自のログ・レコードを生成します。
データ共有グループでは、各APIコールによって、DB2がすべてのアクティブなメンバーのデータ・ブロックをフラッシュし、Extractがフラッシュを行う必要がなくなります。
Extractでフラッシュが行われないようにするには、ExtractのパラメータTRANLOGOPTIONS
のNOFLUSH
オプションを使用します。