2017年11月16日木曜日

検索キーワードのサジェストが復活しました

昨日、しばらく機能していなかった検索キーワードのサジェストが復活しました。

原因はindex templateでした。

FESSの機能に、インデックスのsettingsやmappingsを予め用意する機能があります。
僕はこれを使って、「fess.*」という名称のindexが作られたら、FESSの中核インデックスが自動で生成されるように設定しました。

これがまずかった。

実は、サジェストもelasticsearchのindexに乗っているのですが、このindex名が「fess.suggest.yyyymmdd」なんです。
なので、index templateに沿ってメインのインデックスと同じ設定でサジェスト用のインデックスが作られていた、というわけです。

index templateを削除したら、あっさりサジェストが回復しました。

いやぁ、自分でも設定したことを忘れてました。

FESSとkuromoji.txt

FESSのtakenizerは、ユーザーが辞書を拡張できるようになっています。 UIの「システム」→「辞書」から「ja/kuromoji.txt」を選ぶと、トークンの登録画面になります。 作業は簡単ですが、同じトークンを多重に登録すると、インデックスが更新できなくなる、けっ...