Chat now with support
Chat with Support

SharePlex 8.6.6 - 管理ガイド

このガイドについて このガイドで使用されている表記規則 SharePlex の概要 SharePlex の実行 複数の SharePlex インスタンスの実行 sp_ctrl でのコマンドの実行 SharePlex パラメータ 複製のための Oracle 環境の準備 設定ファイルの作成 オープンターゲットのターゲットへの複製の設定 複製方法の設定 分割レプリケーションの設定 名前付きキューの設定 変更履歴ターゲットを維持するための SharePlex の設定 Oracle DDL の複製 エラー処理のセットアップ データの変換 SharePlex セキュリティ機能の設定 実稼動環境での複製のアクティベート SharePlex の監視 複製上の問題の防止および解決方法 非同期データの修復 Oracle の高可用性を維持するための手順 アクティブな複製環境の変更 Oracle アプリケーションのパッチまたはアップグレードの適用 ソースまたはターゲット上の Oracle データのバックアップ Capture プロセスのチューニング Post プロセスのチューニング 付録 A:ピアトゥピアの説明図 付録 B:SharePlex 環境変数

小さいトランザクションの高速化

Post プロセスのチューニング > 小さいトランザクションの高速化

対象:Oracle 

 

ほとんどの小さなトランザクション(OLTP の最も一般的なトランザクションなど)を処理するときの Post の速度を上げることができます。

サポートされるデータベースによって、使用できる機能が 2 つあります。

  • 並列性レベルの向上
  • コミット数の削減

これらの機能を合わせて Post 拡張パフォーマンス(PEP)と呼びます。

並列性レベルの向上

トランザクションの並列処理機能では、トランザクションを並列に適用するように Post を設定することで、全体のスループットを上げることができます。トランザクションが小さいほど、パフォーマンス上のメリットが大きくなります。

この並列処理機能を有効にするには、SP_OPO_DEPENDENCY_CHECK パラメータを 1 に設定します。

:この機能によって複数 Post プロセスを実行する必要性を減らす(またはなくす)ことができます。ただし、複数の Post プロセスを使用すると単一障害点がなくなるというメリットはあります。Post プロセスでエラーが発生しても他の Post プロセスは継続するため、問題解決後の復旧時間が短くなります。複数プロセスの使用ルール(たとえば、同一プロセスストリームに参照整合性を持つすべてのテーブルを含める)に従っている限り、この機能を複数 Post 設定で使用できます。複数 Post プロセスの使用の詳細については、「名前付き post キューの設定」を参照してください。

コミット数の削減

コミット削減機能を使用すると、小さなトランザクションを大きなトランザクションに結合するように Post を設定できます。これで、処理が必要なコミットや承認の数が減少します。トランザクションが小さいほど、パフォーマンス上のメリットが大きくなります。

並列処理機能を有効にすると、コミット削減機能はデフォルトで有効になります。並列処理が有効でないと、この機能を有効にできません。結合後のトランザクションのサイズは、SP_OPO_COMMIT_REDUCE_MSGS パラメータで制御します。

このパラメータは、トランザクション内のメッセージ(操作)の最小数を設定します。Post は、指定の範囲内に境界がある小さなトランザクションのコミットをスキップし、代わりに結合済みトランザクションで操作をすべて適用します。結合済みトランザクションのデフォルトサイズは 100 メッセージです。コミット削減を無効にするには、このパラメータ値を 1 に設定します。

パラメータ設定は、絶対的なしきい値ではありません。1 つのトランザクションが、複数の結合済みトランザクションに分割されることはありません。そのため、Post はすべての操作とグループの最後のトランザクションのコミットを含めるために、このしきい値を超えなければならないこともあります。

テストの結果、並列処理とコミット削減の両方が有効な場合、パフォーマンスが SharePlex の従来の post 速度の 2 ~ 3 倍も向上する可能性があることがわかっています。

大きなトランザクションの小さなトランザクションへの分割

Post プロセスのチューニング > 大きなトランザクションの小さなトランザクションへの分割

対象:現在は Teradata でサポート

大きなトランザクションを一連の小さなトランザクションに分割するように Post を設定できます。このオプションによって、トランザクションあたりで可能な行ロックの数といった、大きなトランザクションに影響するリソース制限に対処できます。

大きなトランザクションを小さなトランザクションに分割するには

target コマンドを使用して commit_frequency パラメータを設定します。

target r.database [queue queuename] set resources commit_frequency=number_of_operations

このパラメータは、Post がコミットを発行した後の操作の最大数を指定します。1 より大きい任意の整数を指定できます。

例:

target r.mydb queue q1 set resources commit_frequency=10000

キューのパフォーマンスのチューニング

Post プロセスのチューニング > キューのパフォーマンスのチューニング

post キューのパフォーマンスをチューニングすることで、Post のパフォーマンスをチューニングできます。

キュー競合の低減

  • SharePlex キュー競合の低減機能を使用すれば、post キューが満杯になっても、共有メモリがディスクにスワップされないようにすることができます。この機能は、SP_IMP_QUEUE_PAUSE パラメータによって有効になります。
  • このパラメータは、post キューに指定された数のメッセージ数が含まれている場合、そのキューへのデータ書き込みを一時停止します。Post はチェックポイントを発行するまでキューメッセージを共有メモリに保存し、その後メモリからデータを解放します。
  • post キューで共有メモリが不足している場合、読み書き機能がファイル IO を開始してメモリバッファを解放します。このパラメータはキューの書き込みを一時停止します。このためディスクストレージが不要になり、その結果生じる IO の速度低下がなくなるため、Post のパフォーマンスを維持できます。
  • SP_IMP_QUEUE_RESUME パラメータを使用して、Import が post キューへの書き込みを再開する条件のメッセージ数を設定します。 このパラメータは、SP_IMP_QUEUE_PAUSE パラメータと一緒に機能します。post キュー内のメッセージ数がこのパラメータの設定値以下である場合、Import は post キューへの書き込みを再開します。

    この機能を使用するには、SP_IMP_QUEUE_PAUSE と SP_IMP_QUEUE_RESUME の両方がゼロよりも大きく、かつ SP_IMP_QUEUE_PAUSE が SP_IMP_QUEUE_RESUME よりも大きい必要があります。

    サブキューのインデックス作成のチューニング

    サブキューのインデックス作成を有効にして、トランザクションセッションを表すサブキュー構造にアクセスすることで、Post キューのパフォーマンスを改善できます。このパラメータが有効になっている Post キューごとに、メッセージ「Subqueue index enabled queuename」がイベントログに書き込まれます。

    この機能を有効にするには、SP_QUE_USE_SUBQUE_INDEX パラメータを 1 に設定します。このパラメータは、VARRAY をサポートしていません。VARRAY の複製時にこのパラメータが有効になっていると、このパラメータは無視されます。

  • ハッシュベースの水平分割レプリケーションのチューニング

    Post プロセスのチューニング > ハッシュベースの水平分割レプリケーションのチューニング

    ハッシュベースの水平分割レプリケーションは、デフォルトで rowid に基づいたハッシュアルゴリズムを使用します。行が存在するブロックに基づくハッシュアルゴリズムを切り替えることで、ハッシュベースの水平分割レプリケーションを使用するテーブルの処理を改善できることがあります。

    アルゴリズムの変更はルーティングの変更と同じ効果がある(パーティションを切り替える可能性がある)ため、設定ファイルを再びアクティベートする必要があります。アクティベーションではこの変更の影響を受けるテーブルをロックするため、オープントランザクションがないときにハッシュの変更が適用されます。ロックにより、新しいハッシュアルゴリズムで処理されるデータが古いアルゴリズムで処理された使用中のデータよりも前に post されることはないため、非同期状態が発生しなくなります。

    ブロックベースのハッシュに切り替えるには

    1. SP_OCF_HASH_BY_BLOCK パラメータを 1 に設定します。
    2. 設定ファイルを再びアクティベートします。
    Related Documents

    The document was helpful.

    Select Rating

    I easily found the information I needed.

    Select Rating