クライアントインポートを高速化するために並行処理しよう
移送プロファイルにパラメータ「Parallel = n」を設定で並行処理可能に
移送プロファイルにパラメータのParallel = nを設定することで
クライアントのR3transインポート処理を並列処理することが可能になります。
“n” は、1 つの移送依頼に対する並行インポート処理の最大数を意味します。
これが実際にクライアントインポート処理している、R3transプロセスの画面です。
並行処理実行をするにあたって、注意点とより早くするポイントも記載するので最後まで見てくださいね。
インポート並列処理は移送プログラムtpとR3transの新機能!条件あり
クライアントインポートの並列処理は移送プログラムtpとR3transの新機能になります。
それだけに諸条件があります。
クライアントインポートの並列処理の条件は下記の通り。
- SAP_BASIS リリース 700 以降
- カーネル リリース 720 以降 (カーネル リリース 700-711) はサポートされなくなり、下位互換性のある 720 カーネルに置き換えられる)
- テーブル TRBAT3 がシステムで使用可能になっている必要があります。
このテーブルTRBAT3は、サポート パッケージ 700/15 および 710/6 とそれ以降のすべてのリリースで提供されます。
また、現在利用可能な SPAM アップデートにも含まれています。 - DB2/6000 を使用している場合は、ノート 1406740 にも注意してください。
「Parallel = n」を設定する上での推奨事項
R3transの処理負荷がより多くのCPUに分散されるため
Parallelの推奨値はR3transが実行されているアプリケーションサーバーで使用可能なCPUの数によって異なります。
測定では、Parallelの値をCPU数の1~2倍の範囲に設定すると、最高のパフォーマンスが得られることが示されています。
あくまで測定の結果なのでその環境に応じた対応が必要ですね。
この並行インポートは、主にサポートパッケージのインポートおよび拡張パッケージのインストールで使用するために設計されています。
それ以外にもカスタマー移送にも機能します。
カスタマー移送の高速化の詳細については、ノート1223360を参照してください。
AWS/Azureクラウドならば一時的にスペックアップするのも良い
AWSやAzureのクラウドにあるならば、一時的にスペックアップするのも良いでしょう。
クライアントインポートにあまり処理をかけたくないユーザさんも多いです。
可能な限り短縮できるようにできることは対策しましょう。
インスタンスタイプを上げる
インスタンスタイプを上げるにはシステムの停止が必要です。
本稼働システムだと少し難しいですが、夜間対応などで調整できれば時間短縮の要素としては多育なるでしょう。
IOPS/スループット値を上げる
IOPSやスループット値はシステムを停止する必要がないので、対応はしやすいです。
ただ、IOPSやスループット値を上げてもそれをいかすスペックが必要です。
そのためインスタンスタイプを上げるのとセットで考えると良いでしょう
他にパフォーマンスに影響の与える項目
- インポートが実行されているアプリケーションサーバーのCPU数
- 多くの並列プロセスを処理するデータベースの機能
- データベースサーバーの場所(データベースとインポートが同じサーバーで実行されている場合、CPUパワーなどのリソースを共有します)
- I/Oパフォーマンス(並列インポートプロセスが同じデータファイルを読み取り、それらのログを同じディレクトリに書き込むため)
- トランスポート要求のオブジェクト数(小さなトランスポート要求の場合、R3transは並列性を自動的にオフにします)