Oracle® Fusion Middleware Oracle GoldenGateリファレンスfor Windows and UNIX 12c (12.2.0.1) E70112-04 |
|
前 |
次 |
適用対象
Extract
説明
SEQUENCE
パラメータでは、順序値をトランザクション・ログから取得します。現在Oracle GoldenGateは、Oracleデータベースで順序をサポートしています。
注意:
順序のDDLサポート(CREATE
、ALTER
、DROP
、RENAME
)は、順序値のレプリケートと互換性がありますが、順序値のレプリケートには必要ありません。順序値のレプリケートのみを行う場合、Oracle GoldenGate DDLサポート環境をインストールする必要はありません。SEQUENCE
パラメータのみを使用して実行できます。
Oracle GoldenGateは、ターゲットの順序値が次のようになることを保証します。
増分間隔が正の数の場合、ソース値より高い
増分間隔が負の数の場合、ソース値より低い
Replicatは挿入を実行するときに、増分方向に応じて、次のいずれかの公式をテストとして適用します。
source_highwater_value
+ (source_cache_size
*source_increment_size
) =target_highwater_value
または
source_highwater_value
+ (source_cache_size
*source_increment_size
) >=target_highwater_value
この公式がFALSE
と評価される場合、ターゲットの順序は(順序が増分されるときは)ソース値よりも高い値に更新され、(順序が減分されるときは)ソース値よりも低い値に更新されます。ターゲットは、常にこの公式のカッコ内の式以上の値である必要があります。たとえば、ソースの最大値が40で、CACHE
が20の場合、ターゲットの最大値は少なくとも60になるようにします。
40 + (20*1) <60
ターゲットの最大値が80未満の場合、ターゲットがソースの前になるように、Oracle GoldenGateは順序を更新して最大値を上げます。現在の最大値を取得するには、次の問合せを実行します。
SELECT last_number FROM all_sequences WHERE sequence_owner=upper('SEQUENCEOWNER') AND sequence_name=upper('SEQUENCENAME');
サポートされている処理モード
順序の取得をサポートしている処理モードは、次のとおりです。
Oracle GoldenGateは、アクティブ/パッシブ高可用性構成で順序をサポートしています。Oracle GoldenGateは、アクティブ/アクティブ構成での順序値のレプリケーションはサポートしていません。アクティブ/パッシブ構成には両方のサーバーにプライマリExtract、データ・ポンプおよびReplicatが含まれますが、プロセスは一方向でのみアクティブです。フェイルオーバー・サーバー上のExtractプロセスは非アクティブである必要があり、順序の取得は含まれません。Oracle GoldenGateの高可用性を構成する方法の詳細は、Oracle GoldenGateの管理for Windows and UNIXを参照してください。
データ・ポンプに書き込むプライマリExtractにSEQUENCE
を使用する場合、データ・ポンプでも同一のSEQUENCE
パラメータを使用する必要があります。
SOURCEISTABLE
パラメータが、Extractパラメータとして、またはADD EXTRACT
内に含まれるOracle GoldenGate初期ロード方式では、順序値のレプリケーションはサポートされていません。
SEQUENCE使用のガイドライン
ソースおよびターゲットの順序のキャッシュ・サイズおよび増分間隔は、同一である必要があります。
キャッシュは0を含む任意のサイズにできます(NOCACHE
)。
順序は、循環を有効または無効に設定できますが、ソース・データベースとターゲット・データベースの設定は同一にする必要があります。
DDLサポートが有効化されている構成にSEQUENCE
を追加するには、INITIALSETUP
モードでOracle GoldenGate DDLオブジェクトを再インストールする必要があります。
エラー処理
Extractは、順序名を解決できない場合、操作を無視します。
Replicatによる順序のエラー処理を有効化するには、REPERROR
パラメータを使用します。このパラメータは、MAP
パラメータのオプションとしても、単独のパラメータとしても使用できます。REPERROR
は、ターゲットで順序が削除されたかどうかを検出できるので、このパラメータを使用して順序が再作成されるまで順序操作を再試行できます。
REPERROR
は、起動時に紛失したオブジェクトを処理しません。DDLERROR
とIGNOREMISSINGTABLES
を使用してください。
その他の重要情報
データベースによる順序の維持手法にギャップは固有で、発生が予想されるため、Oracle GoldenGateがレプリケートする順序値にはギャップが存在する可能性があります。ただし、ターゲット値は常にソース値より大きくなります。
ExtractがRACシステム上でシングルスレッド・モードで実行中で、ラグがあるノード上で順序が更新された場合、順序の取得に時間がかかる場合があります。これは正常な動作です。
フェイルオーバーでは、トランザクション・ログまたはOracle GoldenGateトレイル・ファイルのデータの損失または破損を引き起こす問題が発生すると、レプリケートされた順序の更新値が失われます。
SEND EXTRACT
およびSEND REPLICAT
をREPORT
オプションとともに使用するときに表示される統計には、順序操作はUPDATE
として表示されます。
デフォルト
なし
構文
SEQUENCE [container
.]schema
.sequence
;
例
SEQUENCE hr.employees_seq;