• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:SPでパラレル処理)

SPでパラレル処理を実装し、パフォーマンスを向上させる方法について調査中

このQ&Aのポイント
  • ストアドプロシージャ内で平行処理を実装できるかどうか調査中です。現在、Select文を実行し情報を取得し、SPに渡してシーケンスで処理しています。子SP内で重いロジックを処理しレコードをインサートしています。セレクト後に子SPを非同期でパラレルに呼び出すことは可能でしょうか?
  • SPでのパラレル処理を利用してパフォーマンスを向上させる方法について調査しています。現在、ストアドプロシージャ内で平行処理を実装することができるかどうか検討中です。また、子SP内で重いロジックを処理し、非同期でパラレルに呼び出す方法についても検討しています。
  • パフォーマンス向上のためにSPでパラレル処理を実装する方法について調査中です。現在、Select文を実行して取得した情報をSPに渡し、シーケンスで処理しています。子SP内で重いロジックを処理しレコードをインサートしています。セレクト後に子SPを非同期でパラレルに呼び出すことができるかどうか検討しています。

質問者が選んだベストアンサー

  • ベストアンサー
  • joih
  • ベストアンサー率35% (37/105)
回答No.1

平行 → 並行 シーケンス → ループ 子SP内=子ストアドプロシージャ内? SPの非同期実行は無理だったような? 重いロジックの内容にもよるのですが、重い原因がテーブルアクセスにあるのであれば、カーソルによる1件読み出しと1件書き込みをやめて、全件を対象として同じ処理を実施後、WKテーブルへ格納、次の処理も同様に実施後、WKテーブルへ格納としたほうが効率が良い場合がありますのでご参考まで。 また、データの演算、判定処理、項目数が多いなどの場合、バルクフェッチなどを利用したり、いったんメモリ(配列)へ格納すると効率が良くなる場合がありますが、メモリの確保と解放を1件ずつ行うと遅かったり(確保数を固定にすると良い)、資源を圧迫する場合がありますので注意が必要です。 どのような重いロジックかによって解決方法が違うのでそれを再掲してみてはどうでしょうか。