こんばんは、牧野です。 今日は前々回の話題に戻って、PostgreSQLのチューニングの話です。 この前は重いSQLをどうやって見つけるか紹介しました。今回は処理を速くするためのSQLの具体例を紹介します。 1.インデックスを使う 以前も書いたので省略しますが、データ数が多くなってくると(数万件以上とか)インデックスが正しく使えているかどうかで負荷のかかり方が大きく変わってきます。 複数カラムの条件検索の場合は、必要に応じて複合インデックスを作成します。その時は、プログラムの方でWHERE句の順番に気をつけましょう。 2.VACUUMとREINDEX 特にバッチプログラムで頻繁にデータ更新を行うようなテーブルがある時は要注意です。VACUUMをしないままで運用していくと大変なことになる場合があります。バッチ処理の後等定期的にVACUUMするようにしましょう。 自動バキュームを使うのも有効で