ページの先頭行へ戻る
Enterprise Postgres 9.5 アプリケーション開発ガイド
FUJITSU Software

12.2.4 評価

12.2.3 確認”の結果から、以下の場合にチューニングを行います。

並列化されない
  • 12.1 動作条件”を満たしていることを確認してください。

  • SQL文の実行時点で、システムリソースに十分な空きがあるかを確認します。(CPU使用率)
    SQL文の実行時点で、サーバ内にコア2個分以上のCPU使用率の空きが必要です。例えば、コアの搭載数が4であり、コア1からコア4までの空きの総和が200%以上であれば並列検索が計画されますが、200%未満の場合には並列検索は計画されません。

  • 以下のパラメータを確認します。

    • “max_worker_processes”に0が指定されていないか

    • “max_parallel_degree”が省略されていないかまたは0が指定されていないか

    • “enable_parallelscan”にoffが指定されていないか

    • “enable_parallelagg”にoffが指定されていないか

    • 対象テーブルのサイズ(ページ数)が“parallel_scan_pages_threshold”の値より大きいか

    上記に該当しない場合は、パラメータ“parallel_setup_cost”または“parallel_tuple_cost”の値を小さくして、再確認してください。


レスポンスが改善されない

チューニングにより改善される可能性があります。以下を確認してください。

  • CPU使用率に余裕がある場合は、“max_parallel_degree”の値を大きくして、再確認してください。
    また、“max_worker_processes”を並列検索を行う最大同時実行SQL文数דmax_parallel_degree”よりも小さい値で指定している場合は、“max_worker_processes”の値を大きくして、再確認してください。

  • 既に並列数が大きい場合には、小さくすることで改善効果が得られる場合があります。
    多重度によるオーバーヘッドがレスポンスに影響を及ぼしている可能性がありますので、“max_parallel_degree”の値を小さくして、再確認してください。


ポイント

並列処理プロセス数については、SQL文実行時のCPU負荷やテーブルのサイズによりシステムが最適な値を決定するため、“max_parallel_degree”とならない場合があります。