こんにちはパフォーマンス改善SEの松崎です。
就職で廃業予定のため今回が最後の投稿となります。
今回はPostgreSQLのpg_hint_planについて掲載させていただきます。
pg_hint_planは、PostgreSQLの拡張機能で、実行時に使用する実行計画を制御するためのヒント句を指定できるようにするものです。
ORACLE DBなどでは標準でヒント句が使用可能ですがPostgreSQLの場合は追加のモジュールであるpg_hint_planを適用する必要があります。
ヒント句はインデックスなどのスキャン方式の指定や結合順序、見積もり補正などが可能となります。
オプティマイザとプランナが生成した実行計画が適切でない場合やインデックスを固定指定したほうがよい場合などに特に力を発揮します。
注意点としてはインデックスやノード順序を固定してしまうため取得パターンによっては遅くなるため、複数のパターンでSQLのチューニングが必要な場合は使用には特に注意が必要となります。
強力なツールですが極力SQLのチューニングを行い、ヒント句は最終手段とする方針がベストだと思われます。
PostgreSQLのSQLのチューニングを行う機会があれば、検討してみてください。
最後になりましたが全国個人事業主支援協会にはお世話になりました。
また機会があればお世話になることもあると思いますのでよろしくお願いいたします。
最後までありがとうございました。