フォーラム: general discussion (スレッド #38701)

インデックスが使われなくなる (2017-06-15 17:55 by gnoseas #79958)

お世話になっております。
テーブルtb_Aの列col_Aに対しbigmを使用したインデックスidx_1を定義した後
以下のようなSQLを実行します。

select * from tb_A where col_A like '%あいうえお%'

この時、実行計画でidx_1が使用されていることが確認できます。
ところが、数時間するとidx_1が使用されずに直接テーブルスキャンされるようになり
検索速度が落ちてしまいます。
col_Aに対し同じ定義のidx_2を定義するとidx_2が使用されるようになりますが
同様にしばらくすると使用されなくなってしまいます。

tb_Aには追加、更新、削除が発生しますが、それほど高負荷な更新がかかっている
という認識はありません。

インデックスが使用されなくなる原因が判らず困っております。
確認すべきポイント等ございましたらご教示ください。

環境は以下の通りです。
PostgreSQL 9.2.2
pg_bigm 1.2

よろしくお願いいたします。

メッセージ #79958 への返信×

ログインしていません。投稿を区別するために投稿者のニックネームをつけてください(ニックネームの一意性は保証されません。全く別の人も同じ名前を利用することが可能ですので本人であることの特定には利用できません。本人であることを保証したい場合にはログインして投稿を行なってください)。 ログインする