プライマリ・コンテンツに移動
Oracle® GoldenGate Oracle GoldenGateリファレンスfor Windows and UNIX
12c (12.1.2)
E49845-08
  目次へ移動
目次

前
 
次
 

SEQUENCE

適用対象

Extract

説明

SEQUENCEパラメータでは、順序値をトランザクション・ログから取得します。現在Oracle GoldenGateは、Oracleデータベースで順序をサポートしています。


注意:

順序のDDLサポート(CREATEALTERDROPRENAME)は、順序値のレプリケートと互換性がありますが、順序値のレプリケートには必要ありません。順序値のレプリケートのみを行う場合、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を使用する場合は、データ・ポンプがPASSTHRUモードかNOPASSTHRUモードであるかにかかわらず、データ・ポンプに対して同一のSEQUENCEパラメータを使用する必要があります。ただし、DDLパラメータを使用し、同じデータ・ポンプを介して(順序またはその他のオブジェクトの) DDL操作を伝播する場合は、データ・ポンプはPASSTHRUモードで動作する必要があります

  • SOURCEISTABLEパラメータが、Extractパラメータとして、またはADD EXTRACT内に含まれるOracle GoldenGate初期ロード方式では、順序値のレプリケーションはサポートされていません。

SEQUENCE使用のガイドライン

  • ソースおよびターゲットの順序のキャッシュ・サイズおよび増分間隔は、同一である必要があります。

  • キャッシュは0を含む任意のサイズにできます(NOCACHE)。

  • 順序は、循環を有効または無効に設定できますが、ソース・データベースとターゲット・データベースの設定は同一にする必要があります。

  • DDLサポートが有効化されている構成にSEQUENCEを追加するには、INITIALSETUPモードでOracle GoldenGate DDLオブジェクトを再インストールする必要があります。

エラー処理

  • Extractは、順序名を解決できない場合、操作を無視します。

  • Replicatによる順序のエラー処理を有効化するには、REPERRORパラメータを使用します。このパラメータは、MAPパラメータのオプションとしても、単独のパラメータとしても使用できます。REPERRORは、ターゲットで順序が削除されたかどうかを検出できるので、このパラメータを使用して順序が再作成されるまで順序操作を再試行できます。

  • REPERRORは、起動時に紛失したオブジェクトを処理しません。DDLERRORIGNOREMISSINGTABLESを使用してください。

その他の重要情報

  • データベースによる順序の維持手法にギャップは固有で、発生が予想されるため、Oracle GoldenGateがレプリケートする順序値にはギャップが存在する可能性があります。ただし、ターゲット値は常にソース値より大きくなります。

  • ExtractがRACシステム上でシングルスレッド・モードで実行中で、ラグがあるノード上で順序が更新された場合、順序の取得に時間がかかる場合があります。これは正常な動作です。

  • フェイルオーバーでは、トランザクション・ログまたはOracle GoldenGateトレイル・ファイルのデータの損失または破損を引き起こす問題が発生すると、レプリケートされた順序の更新値が失われます。

  • SEND EXTRACTおよびSEND REPLICATREPORTオプションとともに使用するときに表示される統計には、順序操作はUPDATEとして表示されます。

デフォルト

なし

構文

SEQUENCE [container.]schema.sequence;
[container.]schema.sequence

ソース順序の完全修飾名を指定します。ソースがOracleコンテナ・データベースである場合、プラガブル・データベースの名前を含めます。オブジェクト名とワイルドカードを正しく指定するには、Oracle GoldenGateの管理for Windows and UNIXを参照してください。

;

SEQUENCEパラメータ文を終了します。

SEQUENCE hr.employees_seq;