E ベスト・プラクティス

E.1 Veridataコンポーネントの近接性

Oracle GoldenGate Veridataの最適な動作のために、次のことをお薦めします:

  • Oracle GoldenGate VeridataサーバーおよびVeridataリポジトリが同じノードにあることを確認します:

    Veridataリポジトリには、Veridataがスムーズに機能するために必要な重要なデータが格納されます。サーバーとリポジトリの間の高速で信頼性の高い接続を確保するには、それらを同じノードに配置します。これは、遅延を防ぐのに役立ちます。ただし、なんらかの理由でそれが不可能な場合は、両方が近くのノードにあり、それらの間のネットワーク接続が高速であることを確認してください。サーバー・ノードからリポジトリ・ノードへの接続に要した時間を確認します。所要時間は、ミリ秒以単位かそれより短くする必要があります。詳細は、「2つのノードの間の接続を確認する方法」を参照してください。

  • VeridataサーバーとVeridataエージェント:

    Oracle GoldenGate VeridataサーバーとVeridataエージェントは、別々のノード/マシンに配置できます。サーバーとエージェントが別々のノード/マシンにある場合は、サーバーとエージェントの間で複数のコールがバインドされるためそれらの間の接続が高速であることを確認してください。Veridataサーバーとソース・エージェント間の接続を確認します。また、Veridataサーバーとターゲット・エージェントの間の接続も確認する必要があります。詳細は、「2つのノードの間の接続を確認する方法」を参照してください。

  • 同じノード上のVeridataエージェントおよび対応するデータベース:

    データベースとエージェントの間で大量のデータが頻繁に転送されるため、高速接続が不可欠です。ソース・エージェントとソース・データベースを同じノードで保持することをお薦めします。同様に、ターゲット・エージェントとターゲット・データベースを同じノードに配置します。ただし、なんらかの理由でそれが不可能な場合は、両方が近くのノードにあり、それらの間のネットワーク接続が高速であることを確認してください。エージェント・ノードからDBノードへの接続に要した時間を確認します。所要時間は、ミリ秒以単位かそれより短くする必要があります。詳細は、「2つのノードの間の接続を確認する方法」を参照してください。

  • 同じノード上のVeridataサーバーおよびソート・ディレクトリ:

    サーバーでは、メイン・メモリーに収まる複数の小さなチャンクでデータが処理されて、それらがソートされ、ソート・ディレクトリと呼ばれる指定されたディレクトリ内の一時ファイルに格納されます。最適なパフォーマンスを得るには、ソート・ディレクトリをサーバーと同じノードに配置する必要があります。

    そうでない場合は、サーバーとソート・ディレクトリの間の接続時間をミリ秒単位がそれより短くする必要があります。詳細は、「2つのノードの間の接続を確認する方法」を参照してください。

E.1.1 2つのノードの間の接続を確認する方法

これらの方法を使用して、任意の2つのノードまたはマシンの間の接続をテストできます。例: Veridataサーバーとソース・エージェントの間の接続を確認する必要がある場合は、次のようにします:

Veridataサーバーの呼出し→ node_1

ソース・エージェントの呼出し→ node_2

Pingを使用して接続をテストするには:

  1. node_1でターミナルを開き、ping [node_2]を実行します。
  2. [node_2]をnode_2のホスト名またはIPアドレスに置き換えます。
  3. 待機時間を測定し、接続の速度を確認するには、ping -c 4 [node_2]を実行します。次に、サンプルの出力を示します。
    Success Case:
    
    PING 192.168.1.2 (192.168.1.2): 56 data bytes
    
    64 bytes from 192.168.1.2: icmp_seq=0 ttl=64 time=0.123 ms
    
    --- 192.168.1.2 ping statistics ---
    
    4 packets transmitted, 4 packets received, 0.0% packet loss
    
    round-trip min/avg/max/stddev = 0.123/0.124/0.125/0.001 ms
    
    Note: If the time for round-trip is in range of milli seconds or less than then connection between source host target host is considered fast.
    
    Failure Case:
    
    PING 192.168.1.2 (192.168.1.2): 56 data bytes
    
    Request timeout for icmp_seq 0
    
    --- 192.168.1.2 ping statistics ---
    
    4 packets transmitted, 0 packets received, 100.0% packet loss

Pingを使用できないときに接続を確認するには:

  1. Telnetを使用して特定のポートを確認します。node_1で、telnet [node_2] [port]を実行します。
  2. [node_2]をnode_2のホスト名またはIPアドレスに置き換え、[port]を特定のポート番号に置き換えます。たとえば、8089です。

出力例

Success Case:

Trying 192.168.1.2...

Connected to 192.168.1.2.

Escape character is '^]'.

Failure Case:

Trying 192.168.1.2...

telnet: Unable to connect to remote host: Connection refused

Pingを使用できないときにNetcat (NC)を使用して接続を確認するには、node_1でnc -zv [node_2] [port]を実行します

出力例

Success Case:

Connection to 192.168.1.2 8089 port [tcp/*] succeeded!

Failure Case:

nc: connect to 192.168.1.2 port 8089 (tcp) failed: Connection refused

E.2 Veridataサーバーおよびエージェントのメモリー

Oracle GoldenGate Veridataを適切に動作させるために、必ずVeridataサーバー、Veridataエージェントおよびソート・ディレクトリに対して正しいメモリーを設定してください。

E.2.1 サーバー・メモリー

E.2.1.1 サーバーの現在のメモリーを確認する方法
次のコマンドを実行します。
ps aux | grep VERIDATA_server1

出力を確認し、XmsとXmxを見つけます。次に例を示します:

 /java/jdk/bin/java server -Xms256m -Xmx1024m -Dweblogic.Name=VERIDATA_server1

ここで、Xmsは最小ヒープであり、Xmxは最大ヒープです。

E.2.1.2 サーバーの最適なメモリーとは

サーバー・メモリーは、比較するデータのサイズの60%以上にすることをお薦めします。

E.2.1.3 サーバーのメモリーを変更する方法

$ORACLE_HOME/user_projects/domains/base_domain /bin/setStartupEnv.shファイル内で、VERIDATA-MANAGED-SERVERSの後の最初のSERVER_MEM_ARGS_64HotSpotエントリを見つけます

次のようになっています:

[Line 327] # Startup parameters for STARTUP_GROUP VERIDATA-MANAGED-SERVERS

...

[Line 362] SERVER_MEM_ARGS_64HotSpot="-Xms256m -Xmx1024m"

その後、新しい値に更新します:
SERVER_MEM_ARGS_64HotSpot="-Xms32g -Xmx96g"

サーバーを再起動し、新しいXms値とXmx値が反映されていることを確認します。

E.2.1.4 Veridataサーバーに割当可能なサーバー・ノードの最大メモリー%とは

さらにパフォーマンス・チューニングが必要な場合は、最大ヒープ(Xmx)を、比較するデータ・サイズの60%から90%まで徐々に増やします。

E.2.2 エージェント・メモリー

エージェントの現在のメモリーを確認する方法

agent.shファイルを見つけて開き、USER_MEM_ARGSの値を確認します。ここでは、Xmxは最大エージェント・メモリーであり、Xmsは最小エージェント・メモリーです。

エージェントの最適なメモリーとは

通常は、エージェント・メモリーは、比較するデータのサイズの25%以上にすることをお薦めします。

エージェントのメモリーを変更する方法

agent.shファイルを開き、USER_MEM_ARGSの値を確認します。デフォルトでは、この値はUSER_MEM_ARGS="-Xmx1024M -Xms1024M"になります。

このメモリーを増やすには、-Xmxの値を増やす必要があります。

ノート:

構成を変更した場合は、エージェントを再起動する必要があります。
E.2.2.1 エージェントの現在のメモリーを確認する方法

agent.shファイル(linux内)およびagent.bat (windows内)を見つけて開き、USER_MEM_ARGSの値を確認します。ここでは、Xmxは最大エージェント・メモリーであり、Xmsは最小エージェント・メモリーです。

E.2.2.2 エージェントの最適なメモリーとは

エージェントのメモリーは、比較するデータのサイズの25%以上にすることをお薦めします。

E.2.2.3 エージェントのメモリーを変更する方法

agent.shファイル(linux内)およびagent.bat (windows内)を開き、 USER_MEM_ARGSの値を確認します。デフォルトでは、この値はUSER_MEM_ARGS="-Xmx1024M -Xms1024M"です。

このメモリーを増やすには、-Xmxの値を増やす必要があります。

ノート:

構成を変更した場合は、エージェントを再起動する必要があります。

E.2.3 ソートおよびソート・ディレクトリのメモリー

ソート・ディレクトリのディスク領域要件とメモリー要件を計算する方法

「サーバー・コンポーネントのディスクおよびメモリー要件」を参照してください。

Oracle GoldenGate Veridataで使用可能な最大メモリーは、<VERIDATA_HOME>/config/oggvdt_cainput.propertiesjvm.memory.xmxを使用して設定します。

サーバー側ソートが有効になっている場合は、このメモリーの大部分が、比較中にソートのために使用されます。

veridata.cfgファイル内のserver.max_sort_memoryパラメータによって、最大ソート・メモリーが決まります。問題を回避するために、jvm.memory.xmxの値がソート・メモリーの要件より大きいことを確認してください。

Oracle GoldenGate Veridataの管理サーバー・パラメータを参照してください。

E.3 SSL証明書の検証

SSL (Secure Sockets Layer)接続は、クライアント(Webブラウザやアプリケーションなど)とサーバーの間のセキュアな暗号化された通信リンクです。それにより、それら二者の間で送信されるデータがプライベートに保たれ、盗聴、改ざんおよび偽造から保護されるようになります。

SSLが有効になっている場合は、証明書の有効性を確認します。

SSLが有効になっているどうかを確認する方法

エージェントとサーバーの間のSSLの場合:

agent.propertiesファイルを調べて、server.useSslプロパティの値を確認します。これをtrueに設定すると、SSLが有効になります。

エージェントとデータベースの間のSSLの場合:

agent.propertiesファイル内のdb_urlを確認します。

db_urlにSSLが埋め込まれている場合は、SSLが有効になります。

SSL証明書が有効になっているかどうかを確認する方法

ブラウザの使用

  1. 当該のWebサイトにアクセスします。
  2. アドレス・バーにある南京錠アイコンをクリックします。
  3. 「証明書」または「接続は安全です」(表現はブラウザによって異なる)を選択します。
  4. 証明書の詳細を表示します。次の内容が含まれています:
    1. 発行者
    2. 有効期間(開始日および失効日)
    3. サブジェクト名(証明書の発行先)
コマンド・ライン・ツール
  1. opensslの使用
    次のコマンドを実行し、証明書の有効期間と発行者の詳細について出力を確認します:
    openssl s_client -connect <hostname>:443 -showcerts
  2. curlの使用:
    curl -v https://<hostname> --insecure 2>&1 | grep 'start date\|expire date'
    これにより、証明書の開始日と失効日が示されます。

E.4 データベース権限

Oracleデータベースでは、COOSフェーズの間に、COOS結合が有効になっている場合は一時表が作成されそのセッションが終了すると削除されます。このフェーズで役立つように、プライベート一時表(PTT)を作成する権限をユーザー(接続設定の間に指定されている)に付与します。

ユーザーの確認方法

これは、「接続構成」ページから確認できます。
  1. 「接続」をクリックし、接続を選択します。
  2. 「接続の詳細」をクリックしてから、「データ・ソース」を選択します。

ノート:

そのユーザーにCREATE TABLECREATE TABLESPACEPRIVATE TEMP TABLEおよびINSERT/UPDATE/DELETE権限が付与されていることを確認します。

E.5 比較対象となるデータ

比較するデータと比較しないデータを把握することは、Oracle GoldenGate Veridataを適切な方法で使用するための最も重要な側面の1つです。このトピックでは、比較する必要があるデータを識別するための、次のベスト・プラクティスについて説明します。

E.5.1 主キー(PK)列の指定

Oracle GoldenGate Veridataでは、キー列の場合はデータが値で比較され、キー列以外の値はハッシュで比較されます。表にキー列がない場合、Oracle GoldenGate Veridataでは、自動的にすべての列がキー列として扱われます。この方法では、表内のすべての列について値で比較が実行されるため、パフォーマンスが大幅に低下する可能性があります。

解決策 - キー列による最適化

少なくとも1つのキー列を追加するか、または値が一意になるようにして複数のキー列の組合せを追加します。

表内のキー列定義が必ず適切になるようにすることで、Oracle GoldenGate Veridataによって、より効率的な比較を実行できます。

キー列を追加するには:

  1. Oracle GoldenGate Veridata UIで、グループと比較ペアに移動します。
  2. 「グループ」を選択してから、「比較ペア」をクリックします。
  3. 「列マッピング」タブをクリックします。
  4. 「キー・マッピング方法」「ユーザー定義」に設定します。
  5. 操作の間にキーとして設定できる列を1つ以上設定します。
  6. 「保存」をクリックします。

E.5.2 パーティション化

大きい表の操作はVeridataのパフォーマンスに影響する場合があるため、大きいソース表とターゲット表を小さいデータセットに分割できます。

これは、自動パーティション、手動行パーティションまたは表パーティション化を使用して実行できます。

自動行パーティション

このオプションは、指定した値に基づいて比較ペア(表)を複数の部分に分割できる、Oracle DBの場合のみ使用できます。自動行パーティションは、比較ペアの作成中に構成できます。これにより、より小さいデータセットで比較が実行されるようになるため、比較が迅速化されます。

自動行パーティションを構成するには:

  1. Oracle GoldenGate Veridata UIの「比較ペア」ページで、「手動マッピング」をクリックし、自動行パーティションをクリックします。

手動行パーティション化

これは、手動でワークロードを複数のプロセスに分配するか比較をデータの特定の部分(過去n日間など)に限定する場合に役立ちます。手動行パーティション化は、手動でワークロードを複数のプロセスに分配するか比較をデータの特定の部分(過去n日間など)に限定する場合に役立ちます。

このオプションは、OracleデータベースとOracle以外のデータベースの両方で使用できます。これは、SQL述語を適用しレコードをフィルタ処理することで実現できます。

手動行パーティション化を構成するには:
  1. 「比較ペア」ページで、行パーティション化をクリックします。
  2. 「+」記号をクリックし、表をパーティション化するためのSQL述語を入力します。

表パーティション

このオプションはOracle DBの場合のみ使用可能です。パーティションを使用して表を作成すると、すべてのパーティションがページにリストされます。比較ペアの作成中に、必要なパーティションのみを選択できます。

表パーティションを構成するには:

  1. Oracle GoldenGate Veridata UIで、グループと比較ペアに移動します。
  2. 「作成」マッピング・ルールの順にをクリックしてから、表パーティションを含めるチェック・ボックスを選択します。

E.5.3 列の除外

次のどちらかの条件で、比較から列を除外して処理負荷を低減できます:
  • 変更されることがない列を含む表の場合。

    または

  • 列が同期されているかどうかは無関係。
比較ペアを作成または編集するときに、列を除外できます。

列を除外するには:

キー列を追加するには:

  1. Oracle GoldenGate Veridata UIで、グループと比較ペアに移動します。
  2. 「グループ」を選択してから、「比較ペア」をクリックします。
  3. 「列マッピング」タブをクリックします。
  4. 除外する列のマッピングを削除をクリックします。
  5. 「保存」をクリックします。

E.5.4 デルタ比較

比較ペアは、表全体のスキャンではなく、前回の実行以降に変更されたデータ・ブロックのみを比較するパフォーマンス機能である、デルタ処理を使用するように構成できます。

デルタ比較では、すべての履歴データが何度も比較されることがなくなり、変更された(デルタ)データのみが比較されます。

デルタ処理を有効にするには:

  1. Oracle GoldenGate Veridata UIで、グループと比較ペアに移動します。
  2. 「グループ」を選択し、「既存の比較ペア」リストから比較ペアを選択します。
  3. 「デルタ処理」をクリックします。
  4. 「デルタ処理」タブで、「デルタ処理」を切り替えます。
  5. デルタ列を選択します。
  6. 「保存」をクリックします。
E.5.4.1 デルタ列の選択
次の特性がある列をデルタ列として使用できます:
  • すべてのDML操作で増分される列(DML - データ操作言語。これらの操作により、表のレコードを挿入、更新、削除または取得できます)。
  • データ型が数値かタイムスタンプのどちらかである列。
  • すべてのDML操作で主キーが変更されるわけではないため、この列を主キーにはできません。(これは更新操作の場合も変化しません)。

このような列が見つからない場合、Oracle DBでは、ORA_ROWSCNをデルタ列として使用できますが、これは表に対してROWDEPENDENCIESが有効になっている場合のみ機能します。Oracle以外のDBの場合は、このトピックで示されている特性がある列を選択します。

E.5.4.2 ROWDEPENDENCIES

ROWDEPENDENCIESは、データベース表の作成時に有効化されます。

Oracle DBの場合のROWDEPENDENCIESが有効になっているかどうかの確認方法

これは、次の問合せでDBレベルで確認する必要があります:
SELECT owner, table_name, dependencies FROM dba_tables;

これにより、表ごとにENABLEDまたはDISABLEDが返されます。dba_tablesへのアクセス権がない場合は、かわりにall_tablesを問い合せます。

表を作成した後はこれを変更できないため、表を再作成してそれを設定します。

SCNとは何かとその値の変更方法

詳細は、ROWSCNを参照してください。

表に対してROWDEPENDENCIESが有効になっているとORA_ROWSCNが最適に機能する理由

SCN (システム変更番号)は、Veridataの比較プロセスにおいて重要な役割を果たします。それが比較ワークフローにどのように影響するかと、行の依存性を有効にすることが重要な理由を次に示します。

  1. 行の依存性が有効になっている場合のSCNの動作:

    行の依存性が有効になっている場合、SCNはデータベース内の各行に関連付けられます。

    これにより、ソースとターゲットの間で変更があった行のみが、比較のためにフラグ付けされるようになります。

  2. 行の依存性が無効になっている場合のSCNの動作:

    行の依存性が有効になっていない場合、SCNは、個々の行ではなくデータ・ブロックに関連付けられます。

  3. 初回比較への影響:

    データ・ブロックの相違により、初回比較フェーズの間に多数の誤検出が発生する可能性があります。非同期比較(COOS)ステップでは、行内のデータが変更されていない場合でも、不必要に、比較対象としてさらにそれらの行が含まれるようになります。それにより、さらに多くのデータが非同期になります。

  4. 行の依存性を有効にする理由

    行の依存性を有効にすると、不要な比較が減り、プロセスの精度と効率が向上します。

    行の依存性なしの場合は、システムによって、相違があるブロック内の行を比較できるようになり、ワークロードが増加し、遅延が発生する可能性があります。

ORA_ROWSCNがデルタ列として使用されているがROWDEPENDENCIESが有効になっていない場合に起こること

ブロック・レベル比較が使用されます。データベースでのブロック・レベル比較とは、個々のレコード・レベルや行レベルではなく、ブロックまたはページに格納されているデータを比較するプロセスのことです。この場合、デルタ比較は遅くなります。それでも、デルタなしの比較よりも迅速になります。

E.6 Veridata構成

E.6.1 接続構成

比較のフェッチ・サイズ

この構成は、データベースからデータをフェッチするためのバッチ・サイズの決定に役立ちます。デフォルト値は1000です。

比較プロセスを迅速化するために、比較のフェッチ・サイズを変更することで、接続設定において、データベースからフェッチされる行の数を増やすことができます。10,000から始めて、100,000まで増やします。

比較のフェッチ・サイズを更新するには:
  1. 「接続構成」タブで、比較ジョブで使用される接続をオープンします

  2. 「接続設定」に移動し、比較のフェッチ・サイズの値を変更します。

E.6.2 プロファイル構成

E.6.2.1 ソート構成

Oracle GoldenGate Veridataサーバーで実行されるソートはデータベース・レベルでのソートよりも迅速になるため、「使用するソート・データ」の値を「サーバー」に設定することをお薦めします。

このソート方法を設定するには:

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「ソート方法」タブをクリックし、「使用するソート・データ」を選択し、ドロップダウン・リストから値を選択します。
E.6.2.2 初回比較構成

最大同時比較スレッド

これは、複数の比較を並行して実行するために使用します。

複数の比較ペアを並行して実行した場合は、マシンの容量を超えると、メモリーが枯渇して、処理が遅くなる可能性があります。これに対処するには、「最大同時比較スレッド」設定を構成します。デフォルト値は4です。

「最大同時比較スレッド」をどのような値にするか

「最大同時比較スレッド」の値は、Veridataサーバー・ノードでのCPUコア数の値によって異なります。CPUコアの30-40%から始めて、コア数まで増やすことができます。

「最大同時比較スレッド」の値を変更するには

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「初回比較」タブをクリックし、「最大同時比較スレッド」を選択します。このフィールドの最大値は100であり、最小値は1です。

ソースおよびターゲットのオプティマイザ・ヒント

Oracleでは、特定の表または問合せ操作に対してパラレル実行を有効にするにはオプティマイザ・ヒントを使用します。オプティマイザ・ヒントを使用すると、問合せの処理を改善できます。

たとえば、PARALLEL(x,16)は、16個のパラレル実行スレッド(または並列度- DOP)を使用して表xに対する操作を実行するようにOracleに指示しています。

オプティマイザ・ヒントを設定するには:

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「初回比較」タブをクリックし、「ソースOracleオプティマイザのヒント」「ターゲットOracleオプティマイザのヒント」を選択します。

    ノート:

    パラレル実行は複数の大規模な表の場合は有益ですが、システム・リソース使用率が高まる可能性があります。
E.6.2.3 非同期構成

非同期確認(COOS)バッチ・サイズ

この設定により、個々の行をフェッチしデータベースへのラウンドトリップを多数行うのではなく、データをバッチでフェッチできます。

COOSバッチ・サイズを更新するには

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「非同期確認」タブをクリックし、「非同期確認バッチ・サイズ」を選択し、ドロップダウン・リストから値を選択します。

    ノート:

    デフォルト値は1000です。このフィールドの最大値は100,000であり、最小値は1です。10,000から始めて、100,000まで増やします。

ソースおよびターゲットのオプティマイザ・ヒント

オプティマイザ・ヒントを設定するには:

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「非同期確認」タブをクリックし、「ソースOracleオプティマイザのヒント」「ターゲットOracleオプティマイザのヒント」を選択します。
E.6.2.4 修復構成

修復バッチ・サイズ

この設定により、個々の行に実行してデータベースへのラウンドトリップを多数行うのではなく、データをバッチで修復できます。

これは「プロファイルの構成」から設定できます。デフォルト値は1000です。このフィールドの最大値は100000であり、最小値は1です。

「修復バッチ・サイズ」を設定するには:

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「修復」タブをクリックし、「修復バッチ・サイズ」「デフォルトの使用」の選択を解除し、その値を更新します。

同時修復操作数

修復を同時に実行するには、この設定を使用します。これに対するデフォルト値は1です。しかしながら、これを大きくすると、修復を並行して実行できます。

「同時修復操作数」を設定するには:

  1. Oracle GoldenGate Veridata UIで、「プロファイルの構成」をクリックし、プロファイルを選択します。
  2. 「修復」タブをクリックし、「同時修復操作数」を選択します。

E.6.3 サーバー構成

veridata.cfgファイルは、<VERIDATA_HOME>/config/veridataフォルダにあります。これには、Veridata操作の実行とカスタマイズに必要な多くの構成が格納されます。

  • COOS結合:

    これは、一意キーまたは主キーのない表に対してデフォルトで有効になっており、<VERIDATA_HOME>/config/veridataフォルダにあるveridata.cfgファイルからその動作をオーバーライドできます。

    この構成では、データベース問合せが結合を使用するようになり、結合のない問合せに比べはるかに迅速になります。

    次のプロパティを追加/編集する必要があります:

    • coos.join.strategy = Values nokeyalwaysおよびnever
    • nokey - これはこのフィールドのデフォルト値であり、主キー/索引が定義されていない表に役立ちます。
    • always – 常にCOOS結合を使用します。
    • never - COOS結合を使用しません。
  • server.concurrent.writers: ソート・ディレクトリごとのライター・スレッドの数。
  • server.concurrent.readers: サーバー全体のリーダー・スレッドの数。
  • server.number_sort_threads: エージェントからの入力バッファのソートに使用されるスレッドの数。使用可能なプロセスの数より多くはできません。

E.6.4 エージェント構成

E.6.4.1 COOSバッチ・フェッチ

COOSバッチを使用すると、Oracle GoldenGate Veridataを利用して、個々の問合せを実行するのではなくエージェントに対してフェッチをバッチとして実行できます。これにより、同じく多数のデータベース・トリップが省かれるため、迅速化されます。

agent.propertiesでのCOOSバッチ・フェッチの追加

これを有効にするには、エージェント両方についてagent.propertiesファイルにプロパティcoos.batch.fetch=trueを追加し、エージェントを再起動します。

ノート:

COOS結合とCOOSバッチを同時に使用しないでください。使用するのは、一度にどちらか一方にしてください。
E.6.4.2 ROWSCN

このステップは、表全体の比較をスキップし特定のSCN値の後のデータを比較する必要がある場合に役立ちます。

SCNとは

データベースでは、システム変更番号(SCN)は、データベースに対して加えられた変更を追跡するために使用される、論理的かつ内部的な、単調に増加する数値です。データベース内のコミットされた各トランザクションには、そのトランザクションがコミットされた時点を表す一意のSCNが割り当てられます。

現在のSCN値が100である場合は、rowscnの値を100にすると、その特定のSCN値があるレコードが比較で省略されます。このプロパティは、agent.propertiesで追加できます。詳細は、「よくある質問(FAQ)」を参照してください。

rowscn=10000

エージェント両方に対してこれを追加した後、両方のエージェントを再起動し、もう一度比較を実行します。

E.6.5 よくある質問(FAQ)

ソート・ディレクトリとは何ですか?

ソート・フェーズでは、メイン・メモリーに収めるのに十分な小ささのデータのチャンクが、ディレクトリ内の一時ファイルにおいて読み取られ、ソートされ、書き込まれます。

ソート・ディレクトリを見つけるにはどうすればよいですか?

ソート・ディレクトリは、プロファイル設定ページの「ソート方法」の下にあります。

  1. 「プロファイルの構成」に移動し、プロファイルを選択し、「ソート方法」をクリックします。
  2. パラメータ「ソース・データの一時記憶域ディレクトリ」および「ターゲット・データの一時記憶域ディレクトリ」の値を確認します。

エージェント・プロパティ・ファイルの場所はどこですか?

エージェント・プロパティ・ファイルは、agent.propertiesという名前で<agent_home>パス内あります。

Veridataサーバーの構成ファイルはどこにありますか?

<VERIDATA_HOME>/config/veridata/veridata.cfg

レポートはどこにありますか?

レポートはパス<VERIDATA_HOME>/veridata/reportsにあります

1つのDBに複数のエージェントを使用できますか?

はい。ただし、1つのDBに対して1つのエージェントにすることをお薦めします。

1つのグループ内に作成できる比較ペアはいくつまでですか?

これに関する制限はありません。いくつでも問題ありません。

並行して実行できる比較ペアはいくつまでですか?

100がデフォルトの最大数です。ただし、veridata.cfgファイルから、max_concurrent_jobsの値を変更することでそれを更新できます。