お世話になります。
表題のとおり、FessとElasticsearchの連携についての質問です。
<背景>
公式HPのインストール手順に従ってFessとElasticsearchをそれぞれローカルにインストール(zipファイル展開)しました。
参照したページ:インストール
環境は以下のとおりです。
OS:Windows10
fess-13.14.0
elasticsearch-7.14.0
インストール手順にある「elasticsearch.yml」「fess.in.bat」の変更は行っております。
日本語のファイルを対象とした全文検索のシステム構築を想定しており、
自然文検索が可能となるようにkuromojiのプラグインをインストールし、検証を行っております。
インデックス時/検索時どちらもデフォルトでkuromoji_tokenizerを使用した形態素解析を行いたいため、
「…\fess-13.14.0\app\WEB-INF\classes\fess_indices\fess.json」のstandard_analyzer、standard_search_analyzerのtokenizerに
「kuromoji_tokenizer」を設定し、再インデクシングおよび再クロールを行いました。(char_filter, filterは一旦無しに設定)
インデックスにはサンプルとして以下のドキュメントが入っています。
ファイル名:sample03.txt
本文 :本日は良い天気です。<改行>明日は雨になるかもしれません。
<問題点>
上記サンプルファイルを対象としたFess検索画面での検索結果と、コマンドプロンプトから検索APIを実行したときの検索結果が異なってしまいます。
コマンドプロンプトからの検索API:
「明日は雨」→sample03.txtがヒット
「明日は雨かもしれせん」→sample03.txtがヒット
Fess検索画面での検索:
「明日は雨」→sample03.txtがヒット
「明日は雨かもしれません」→検索結果なし
Webでの検索API (http://localhost:8080/json/?q=検索語) も試しましたが、Fessでの検索と同様の結果です。
インデックス時と検索時の形態素解析について、コマンドプロンプトからAPIで確認した限りでは正常に動作しているように見えます。
インデックス時
{
“tokens” : [
{
“token” : “明日”,
“start_offset” : 0,
“end_offset” : 2,
“type” : “word”,
“position” : 0
},
{
“token” : “は”,
“start_offset” : 2,
“end_offset” : 3,
“type” : “word”,
“position” : 1
},
{
“token” : “雨”,
“start_offset” : 3,
“end_offset” : 4,
“type” : “word”,
“position” : 2
},
{
“token” : “に”,
“start_offset” : 4,
“end_offset” : 5,
“type” : “word”,
“position” : 3
},
{
“token” : “なる”,
“start_offset” : 5,
“end_offset” : 7,
“type” : “word”,
“position” : 4
},
{
“token” : “かも”,
“start_offset” : 7,
“end_offset” : 9,
“type” : “word”,
“position” : 5
},
{
“token” : “しれ”,
“start_offset” : 9,
“end_offset” : 11,
“type” : “word”,
“position” : 6
},
{
“token” : “ませ”,
“start_offset” : 11,
“end_offset” : 13,
“type” : “word”,
“position” : 7
},
{
“token” : “ん”,
“start_offset” : 13,
“end_offset” : 14,
“type” : “word”,
“position” : 8
}
]
}
検索時
{
“_shards” : {
“total” : 1,
“successful” : 1,
“failed” : 0
},
“valid” : true,
“explanations” : [
{
“index” : “fess.202110071608”,
“valid” : true,
“explanation” : “content:明日 content:は content:雨 content:に content:なる content:かも content:しれ content:ませ content:ん”
}
]
}
<質問>
上記事象より、Fessから検索する際にElasticsearchとの連携が上手くできていないように見受けられるのですが、
インストール手順以外に必要な設定などありますでしょうか?
よろしくお願いいたします。