調整Replicatについて
調整モードでは、Replicatは次のように動作します。
- Oracle GoldenGate証跡を読み取ります。
- データのフィルタリング、マッピング、および変換を実行します。
- データのフィルタリング、マッピング、および変換を実行します。
- 指定のターゲット・データベース(たとえばODBCまたはネイティブのデータベース・インタフェース)に対してサポートされているSQLインタフェースを介して、SQLをターゲットに適用します。
クラシック・モードと調整モードの相違点は、調整モードではReplicatがマルチスレッドである点です。単一のReplicatインスタンス内で複数のスレッドが独立に証跡を読み取り、パラレルにトランザクションを適用します。各スレッドは、フィルタリング、マッピング、変換、SQL作成およびエラー処理を、割り当てられたワークロードについて処理します。coordinatorスレッドは、トランザクションをスレッド間で調整して、スレッド間の依存関係を処理します。
合計ソース・トランザクションの整合性が維持されないように、ソース・トランザクションはCRプロセスに分割できます。CRプロセスによって処理されるトランザクションの一部はコミットされた順序で実行されますが、すべてのCRプロセスに渡るトランザクション全体はコミットされた順序では実行されません。
調整Replicatでは、ワークロードのユーザー定義のパーティション化が可能で、大量のトランザクションを同時に適用できます。また、DDLやTHREADRANGE
パーティション化を使用した主キー更新などの調整の必要なトランザクションの実行が自動的に調整されます。そのようなトランザクションは、ターゲットでは1つのトランザクションとして完全に同期化されて実行されます。まず、それより前のトランザクションがすべて適用されるのを待機し、このバリア・トランザクションより後のトランザクションはすべて、このバリア・トランザクションが適用されるまで待機します。
1つの調整Replicatに必要なパラメータ・ファイルは、スレッドの数に関係なく1つのみです。MAP
文でTHREAD
またはTHREADRANGE
オプションを使用して、それらのオブジェクトのトランザクションをどのスレッドが処理するかを指定し、Replicatグループを作成するときに、スレッド数の最大値を指定します。
この図は、調整Replicatのアーキテクチャを示しています。
この図に示すように、調整Replicatには次の2つのプロセスが含まれます。