最近 PostgreSQL を学んでいて「インデックスショットガン」という言葉を知りました。 これは、闇雲にインデックスを設定することによって、パフォーマンスが悪化することを表した言葉です。 一般的にインデックスを作成することで検索は速くなりますが、 逆に INSERT/UPDATE/DELETE などの更新系の処理が遅くなると言われています。 今回は以下の2点を実際に検証してみました。 インデックスを増やすと INSERT がどのくらい遅くなるのか 不要なインデックスを削除すると INSERT がどのくらい改善するのか インデックスが増えると遅くなる理由 インデックスが増えると遅くなる理由はデータ更新時にインデックスも併せて更新する必要が出てくるためです。 インデックスは本の索引をイメージするといいのですが、 本の索引があると読みたいページをすぐに見つけられますが、本の内容を更新するたび

